react-native-picture-selector 1.0.20 → 1.0.22
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/HybridPictureSelector.swift +37 -12
- package/ios/NitroPictureSelectorOnLoad.mm +2 -2
- package/nitrogen/generated/android/NitroPictureSelectorOnLoad.cpp +6 -28
- package/nitrogen/generated/android/NitroPictureSelectorOnLoad.hpp +3 -3
- package/nitrogen/generated/android/c++/JCompressOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JCropOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JHybridHybridPictureSelectorSpec.cpp +8 -8
- package/nitrogen/generated/android/c++/JHybridHybridPictureSelectorSpec.hpp +2 -2
- package/nitrogen/generated/android/c++/JMediaAsset.hpp +2 -2
- package/nitrogen/generated/android/c++/JMediaType.hpp +2 -2
- package/nitrogen/generated/android/c++/JPickerTheme.hpp +2 -2
- package/nitrogen/generated/android/c++/JPictureSelectorOptions.hpp +2 -2
- package/nitrogen/generated/ios/NitroPictureSelector-Swift-Cxx-Bridge.cpp +4 -4
- package/nitrogen/generated/ios/NitroPictureSelector-Swift-Cxx-Bridge.hpp +8 -8
- package/nitrogen/generated/ios/NitroPictureSelector-Swift-Cxx-Umbrella.hpp +7 -7
- package/nitrogen/generated/ios/c++/HybridHybridPictureSelectorSpecSwift.cpp +2 -2
- package/nitrogen/generated/ios/c++/HybridHybridPictureSelectorSpecSwift.hpp +8 -8
- package/nitrogen/generated/shared/c++/CompressOptions.hpp +6 -6
- package/nitrogen/generated/shared/c++/CropOptions.hpp +6 -6
- package/nitrogen/generated/shared/c++/HybridHybridPictureSelectorSpec.cpp +2 -2
- package/nitrogen/generated/shared/c++/HybridHybridPictureSelectorSpec.hpp +6 -7
- package/nitrogen/generated/shared/c++/MediaAsset.hpp +6 -6
- package/nitrogen/generated/shared/c++/MediaType.hpp +11 -11
- package/nitrogen/generated/shared/c++/PickerTheme.hpp +13 -13
- package/nitrogen/generated/shared/c++/PictureSelectorOptions.hpp +22 -22
- package/package.json +1 -1
|
@@ -48,12 +48,19 @@ final class HybridPictureSelector: HybridHybridPictureSelectorSpec_base, HybridH
|
|
|
48
48
|
|
|
49
49
|
func openPicker(options: PictureSelectorOptions) -> Promise<[MediaAsset]> {
|
|
50
50
|
return Promise { [weak self] resolver in
|
|
51
|
-
guard let self
|
|
52
|
-
resolver.reject(PictureSelectorError.unknown("
|
|
51
|
+
guard let self else {
|
|
52
|
+
resolver.reject(PictureSelectorError.unknown("openPicker: native module was deallocated"))
|
|
53
53
|
return
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
DispatchQueue.main.async {
|
|
57
|
+
if self.session != nil {
|
|
58
|
+
resolver.reject(PictureSelectorError.unknown(
|
|
59
|
+
"A picker or camera session is already active. Dismiss it before opening a new one."
|
|
60
|
+
))
|
|
61
|
+
return
|
|
62
|
+
}
|
|
63
|
+
|
|
57
64
|
guard let topVC = self.topViewController() else {
|
|
58
65
|
resolver.reject(PictureSelectorError.unknown(
|
|
59
66
|
"No active UIViewController. Ensure the picker is called from a mounted component."
|
|
@@ -85,22 +92,26 @@ final class HybridPictureSelector: HybridHybridPictureSelectorSpec_base, HybridH
|
|
|
85
92
|
|
|
86
93
|
func openCamera(options: PictureSelectorOptions) -> Promise<[MediaAsset]> {
|
|
87
94
|
return Promise { [weak self] resolver in
|
|
88
|
-
guard let self
|
|
89
|
-
resolver.reject(PictureSelectorError.unknown("
|
|
95
|
+
guard let self else {
|
|
96
|
+
resolver.reject(PictureSelectorError.unknown("openCamera: native module was deallocated"))
|
|
90
97
|
return
|
|
91
98
|
}
|
|
92
99
|
|
|
93
100
|
DispatchQueue.main.async {
|
|
101
|
+
if self.session != nil {
|
|
102
|
+
resolver.reject(PictureSelectorError.unknown(
|
|
103
|
+
"A picker or camera session is already active. Dismiss it before opening a new one."
|
|
104
|
+
))
|
|
105
|
+
return
|
|
106
|
+
}
|
|
107
|
+
|
|
94
108
|
guard let topVC = self.topViewController() else {
|
|
95
109
|
resolver.reject(PictureSelectorError.unknown("No active UIViewController."))
|
|
96
110
|
return
|
|
97
111
|
}
|
|
98
112
|
|
|
99
113
|
var cameraConfig = CameraConfiguration()
|
|
100
|
-
|
|
101
|
-
case "video": cameraConfig.mediaType = .video
|
|
102
|
-
default: cameraConfig.mediaType = .photo
|
|
103
|
-
}
|
|
114
|
+
cameraConfig.mediaType = (options.mediaType == .video) ? .video : .photo
|
|
104
115
|
if let maxDur = options.maxVideoDuration {
|
|
105
116
|
cameraConfig.videoMaximumDuration = maxDur
|
|
106
117
|
}
|
|
@@ -115,7 +126,10 @@ final class HybridPictureSelector: HybridHybridPictureSelectorSpec_base, HybridH
|
|
|
115
126
|
cameraConfig,
|
|
116
127
|
fromViewController: topVC
|
|
117
128
|
) { [weak self] result, _ in
|
|
118
|
-
guard let self
|
|
129
|
+
guard let self else {
|
|
130
|
+
resolver.reject(PictureSelectorError.unknown("openCamera: native module was deallocated"))
|
|
131
|
+
return
|
|
132
|
+
}
|
|
119
133
|
guard let photoAsset = result?.photoAsset else {
|
|
120
134
|
resolver.reject(PictureSelectorError.cancelled)
|
|
121
135
|
return
|
|
@@ -146,9 +160,9 @@ final class HybridPictureSelector: HybridHybridPictureSelectorSpec_base, HybridH
|
|
|
146
160
|
|
|
147
161
|
// Media type
|
|
148
162
|
switch options.mediaType {
|
|
149
|
-
case
|
|
163
|
+
case .video:
|
|
150
164
|
config.selectOptions = [.video]
|
|
151
|
-
case
|
|
165
|
+
case .all:
|
|
152
166
|
config.selectOptions = [.photo, .video]
|
|
153
167
|
default:
|
|
154
168
|
config.selectOptions = [.photo]
|
|
@@ -196,6 +210,13 @@ final class HybridPictureSelector: HybridHybridPictureSelectorSpec_base, HybridH
|
|
|
196
210
|
config.themeColor = color
|
|
197
211
|
}
|
|
198
212
|
|
|
213
|
+
// selectedAssets: pre-selecting assets by file:// URI requires resolving each URI
|
|
214
|
+
// back to a PHAsset via PHPhotoLibrary and wrapping it in a PhotoAsset object.
|
|
215
|
+
// This is not yet implemented. Callers should not rely on this option on iOS.
|
|
216
|
+
// TODO: implement pre-selection using PHAsset.fetchAssets(withALAssetURLs:options:)
|
|
217
|
+
// or localIdentifier lookup, then set config.preSelectedAssets (verify field name
|
|
218
|
+
// in HXPhotoPicker v5.0.5 before enabling).
|
|
219
|
+
|
|
199
220
|
return config
|
|
200
221
|
}
|
|
201
222
|
|
|
@@ -330,7 +351,11 @@ extension HybridPictureSelector: PhotoPickerControllerDelegate {
|
|
|
330
351
|
activePicker = nil
|
|
331
352
|
|
|
332
353
|
pickerController.dismiss(animated: true) { [weak self] in
|
|
333
|
-
guard let
|
|
354
|
+
guard let s = captured else { return }
|
|
355
|
+
guard let self else {
|
|
356
|
+
s.resolver(.failure(PictureSelectorError.unknown("pickerController: native module was deallocated")))
|
|
357
|
+
return
|
|
358
|
+
}
|
|
334
359
|
Task {
|
|
335
360
|
do {
|
|
336
361
|
let assets = try await self.mapResults(result, compress: s.options.compress)
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
extern "C" void* NitroPictureSelectorMakeHybrid();
|
|
21
21
|
|
|
22
22
|
using namespace margelo::nitro;
|
|
23
|
-
using namespace margelo::pictureselector;
|
|
24
|
-
using namespace margelo::pictureselector::bridge::swift;
|
|
23
|
+
using namespace margelo::nitro::margelo::pictureselector;
|
|
24
|
+
using namespace margelo::nitro::margelo::pictureselector::bridge::swift;
|
|
25
25
|
|
|
26
26
|
@interface NitroPictureSelectorOnLoad: NSObject
|
|
27
27
|
@end
|
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
|
|
18
18
|
#include "JHybridHybridPictureSelectorSpec.hpp"
|
|
19
19
|
|
|
20
|
-
namespace margelo::pictureselector {
|
|
20
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
21
21
|
|
|
22
22
|
int initialize(JavaVM* vm) {
|
|
23
23
|
return facebook::jni::initialize(vm, []() {
|
|
24
|
-
::margelo::pictureselector::registerAllNatives();
|
|
24
|
+
::margelo::nitro::margelo::pictureselector::registerAllNatives();
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
|
|
@@ -29,35 +29,13 @@ int initialize(JavaVM* vm) {
|
|
|
29
29
|
|
|
30
30
|
void registerAllNatives() {
|
|
31
31
|
using namespace margelo::nitro;
|
|
32
|
-
using namespace margelo::pictureselector;
|
|
32
|
+
using namespace margelo::nitro::margelo::pictureselector;
|
|
33
33
|
|
|
34
34
|
// Register native JNI methods
|
|
35
|
-
margelo::pictureselector::JHybridHybridPictureSelectorSpec::CxxPart::registerNatives();
|
|
35
|
+
margelo::nitro::margelo::pictureselector::JHybridHybridPictureSelectorSpec::CxxPart::registerNatives();
|
|
36
36
|
|
|
37
37
|
// Register Nitro Hybrid Objects
|
|
38
|
-
|
|
39
|
-
// HybridPictureSelector has a no-arg constructor and obtains its
|
|
40
|
-
// ReactApplicationContext from NitroModules.applicationContext (set during
|
|
41
|
-
// Nitro initialisation, before any JS call can reach this factory).
|
|
42
|
-
HybridObjectRegistry::registerHybridObjectConstructor(
|
|
43
|
-
"PictureSelector",
|
|
44
|
-
[]() -> std::shared_ptr<HybridObject> {
|
|
45
|
-
// Locate the concrete Kotlin implementation class
|
|
46
|
-
static const auto klass =
|
|
47
|
-
jni::findClassStatic("com/margelo/pictureselector/HybridPictureSelector");
|
|
48
|
-
// Invoke the no-arg constructor.
|
|
49
|
-
// fbjni deduces the return type of newObject() from the template argument of
|
|
50
|
-
// getConstructor<F>(). Using void() would produce local_ref<void> which is not
|
|
51
|
-
// a valid fbjni reference type. Using jni::JObject::javaobject() makes newObject()
|
|
52
|
-
// return local_ref<JObject>, which can then be safely cast with dynamic_ref_cast.
|
|
53
|
-
static const auto ctor = klass->getConstructor<jni::JObject::javaobject()>();
|
|
54
|
-
auto javaInstance = klass->newObject(ctor);
|
|
55
|
-
// Downcast to the spec JavaPart so JHybridHybridPictureSelectorSpec can wrap it
|
|
56
|
-
auto javaPart =
|
|
57
|
-
jni::dynamic_ref_cast<JHybridHybridPictureSelectorSpec::JavaPart>(javaInstance);
|
|
58
|
-
return std::make_shared<JHybridHybridPictureSelectorSpec>(javaPart);
|
|
59
|
-
}
|
|
60
|
-
);
|
|
38
|
+
|
|
61
39
|
}
|
|
62
40
|
|
|
63
|
-
} // namespace margelo::pictureselector
|
|
41
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
#include <functional>
|
|
10
10
|
#include <NitroModules/NitroDefines.hpp>
|
|
11
11
|
|
|
12
|
-
namespace margelo::pictureselector {
|
|
12
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
13
13
|
|
|
14
14
|
[[deprecated("Use registerNatives() instead.")]]
|
|
15
15
|
int initialize(JavaVM* vm);
|
|
@@ -23,7 +23,7 @@ namespace margelo::pictureselector {
|
|
|
23
23
|
* JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) {
|
|
24
24
|
* return facebook::jni::initialize(vm, []() {
|
|
25
25
|
* // register all NitroPictureSelector HybridObjects
|
|
26
|
-
* margelo::pictureselector::registerNatives();
|
|
26
|
+
* margelo::nitro::margelo::pictureselector::registerNatives();
|
|
27
27
|
* // any other custom registrations go here.
|
|
28
28
|
* });
|
|
29
29
|
* }
|
|
@@ -31,4 +31,4 @@ namespace margelo::pictureselector {
|
|
|
31
31
|
*/
|
|
32
32
|
void registerAllNatives();
|
|
33
33
|
|
|
34
|
-
} // namespace margelo::pictureselector
|
|
34
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
#include <optional>
|
|
14
14
|
|
|
15
|
-
namespace margelo::pictureselector {
|
|
15
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
16
16
|
|
|
17
17
|
using namespace facebook;
|
|
18
18
|
|
|
@@ -66,4 +66,4 @@ namespace margelo::pictureselector {
|
|
|
66
66
|
}
|
|
67
67
|
};
|
|
68
68
|
|
|
69
|
-
} // namespace margelo::pictureselector
|
|
69
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
#include <optional>
|
|
14
14
|
|
|
15
|
-
namespace margelo::pictureselector {
|
|
15
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
16
16
|
|
|
17
17
|
using namespace facebook;
|
|
18
18
|
|
|
@@ -70,4 +70,4 @@ namespace margelo::pictureselector {
|
|
|
70
70
|
}
|
|
71
71
|
};
|
|
72
72
|
|
|
73
|
-
} // namespace margelo::pictureselector
|
|
73
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -8,17 +8,17 @@
|
|
|
8
8
|
#include "JHybridHybridPictureSelectorSpec.hpp"
|
|
9
9
|
|
|
10
10
|
// Forward declaration of `MediaAsset` to properly resolve imports.
|
|
11
|
-
namespace margelo::pictureselector { struct MediaAsset; }
|
|
11
|
+
namespace margelo::nitro::margelo::pictureselector { struct MediaAsset; }
|
|
12
12
|
// Forward declaration of `PictureSelectorOptions` to properly resolve imports.
|
|
13
|
-
namespace margelo::pictureselector { struct PictureSelectorOptions; }
|
|
13
|
+
namespace margelo::nitro::margelo::pictureselector { struct PictureSelectorOptions; }
|
|
14
14
|
// Forward declaration of `MediaType` to properly resolve imports.
|
|
15
|
-
namespace margelo::pictureselector { enum class MediaType; }
|
|
15
|
+
namespace margelo::nitro::margelo::pictureselector { enum class MediaType; }
|
|
16
16
|
// Forward declaration of `CropOptions` to properly resolve imports.
|
|
17
|
-
namespace margelo::pictureselector { struct CropOptions; }
|
|
17
|
+
namespace margelo::nitro::margelo::pictureselector { struct CropOptions; }
|
|
18
18
|
// Forward declaration of `CompressOptions` to properly resolve imports.
|
|
19
|
-
namespace margelo::pictureselector { struct CompressOptions; }
|
|
19
|
+
namespace margelo::nitro::margelo::pictureselector { struct CompressOptions; }
|
|
20
20
|
// Forward declaration of `PickerTheme` to properly resolve imports.
|
|
21
|
-
namespace margelo::pictureselector { enum class PickerTheme; }
|
|
21
|
+
namespace margelo::nitro::margelo::pictureselector { enum class PickerTheme; }
|
|
22
22
|
|
|
23
23
|
#include "MediaAsset.hpp"
|
|
24
24
|
#include <vector>
|
|
@@ -38,7 +38,7 @@ namespace margelo::pictureselector { enum class PickerTheme; }
|
|
|
38
38
|
#include "PickerTheme.hpp"
|
|
39
39
|
#include "JPickerTheme.hpp"
|
|
40
40
|
|
|
41
|
-
namespace margelo::pictureselector {
|
|
41
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
42
42
|
|
|
43
43
|
std::shared_ptr<JHybridHybridPictureSelectorSpec> JHybridHybridPictureSelectorSpec::JavaPart::getJHybridHybridPictureSelectorSpec() {
|
|
44
44
|
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
@@ -122,4 +122,4 @@ namespace margelo::pictureselector {
|
|
|
122
122
|
}();
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
} // namespace margelo::pictureselector
|
|
125
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
namespace margelo::pictureselector {
|
|
17
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
18
18
|
|
|
19
19
|
using namespace facebook;
|
|
20
20
|
|
|
@@ -61,4 +61,4 @@ namespace margelo::pictureselector {
|
|
|
61
61
|
jni::global_ref<JHybridHybridPictureSelectorSpec::JavaPart> _javaPart;
|
|
62
62
|
};
|
|
63
63
|
|
|
64
|
-
} // namespace margelo::pictureselector
|
|
64
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
#include <optional>
|
|
14
14
|
#include <string>
|
|
15
15
|
|
|
16
|
-
namespace margelo::pictureselector {
|
|
16
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
17
17
|
|
|
18
18
|
using namespace facebook;
|
|
19
19
|
|
|
@@ -95,4 +95,4 @@ namespace margelo::pictureselector {
|
|
|
95
95
|
}
|
|
96
96
|
};
|
|
97
97
|
|
|
98
|
-
} // namespace margelo::pictureselector
|
|
98
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
#include <fbjni/fbjni.h>
|
|
11
11
|
#include "MediaType.hpp"
|
|
12
12
|
|
|
13
|
-
namespace margelo::pictureselector {
|
|
13
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
14
14
|
|
|
15
15
|
using namespace facebook;
|
|
16
16
|
|
|
@@ -58,4 +58,4 @@ namespace margelo::pictureselector {
|
|
|
58
58
|
}
|
|
59
59
|
};
|
|
60
60
|
|
|
61
|
-
} // namespace margelo::pictureselector
|
|
61
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
#include <fbjni/fbjni.h>
|
|
11
11
|
#include "PickerTheme.hpp"
|
|
12
12
|
|
|
13
|
-
namespace margelo::pictureselector {
|
|
13
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
14
14
|
|
|
15
15
|
using namespace facebook;
|
|
16
16
|
|
|
@@ -61,4 +61,4 @@ namespace margelo::pictureselector {
|
|
|
61
61
|
}
|
|
62
62
|
};
|
|
63
63
|
|
|
64
|
-
} // namespace margelo::pictureselector
|
|
64
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
#include <string>
|
|
23
23
|
#include <vector>
|
|
24
24
|
|
|
25
|
-
namespace margelo::pictureselector {
|
|
25
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
26
26
|
|
|
27
27
|
using namespace facebook;
|
|
28
28
|
|
|
@@ -118,4 +118,4 @@ namespace margelo::pictureselector {
|
|
|
118
118
|
}
|
|
119
119
|
};
|
|
120
120
|
|
|
121
|
-
} // namespace margelo::pictureselector
|
|
121
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
#include "NitroPictureSelector-Swift-Cxx-Umbrella.hpp"
|
|
13
13
|
#include <NitroModules/NitroDefines.hpp>
|
|
14
14
|
|
|
15
|
-
namespace margelo::pictureselector::bridge::swift {
|
|
15
|
+
namespace margelo::nitro::margelo::pictureselector::bridge::swift {
|
|
16
16
|
|
|
17
17
|
// pragma MARK: std::function<void(const std::vector<MediaAsset>& /* result */)>
|
|
18
18
|
Func_void_std__vector_MediaAsset_ create_Func_void_std__vector_MediaAsset_(void* NON_NULL swiftClosureWrapper) noexcept {
|
|
@@ -33,10 +33,10 @@ namespace margelo::pictureselector::bridge::swift {
|
|
|
33
33
|
// pragma MARK: std::shared_ptr<HybridHybridPictureSelectorSpec>
|
|
34
34
|
std::shared_ptr<HybridHybridPictureSelectorSpec> create_std__shared_ptr_HybridHybridPictureSelectorSpec_(void* NON_NULL swiftUnsafePointer) noexcept {
|
|
35
35
|
NitroPictureSelector::HybridHybridPictureSelectorSpec_cxx swiftPart = NitroPictureSelector::HybridHybridPictureSelectorSpec_cxx::fromUnsafe(swiftUnsafePointer);
|
|
36
|
-
return std::make_shared<margelo::pictureselector::HybridHybridPictureSelectorSpecSwift>(swiftPart);
|
|
36
|
+
return std::make_shared<margelo::nitro::margelo::pictureselector::HybridHybridPictureSelectorSpecSwift>(swiftPart);
|
|
37
37
|
}
|
|
38
38
|
void* NON_NULL get_std__shared_ptr_HybridHybridPictureSelectorSpec_(std__shared_ptr_HybridHybridPictureSelectorSpec_ cppType) {
|
|
39
|
-
std::shared_ptr<margelo::pictureselector::HybridHybridPictureSelectorSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::pictureselector::HybridHybridPictureSelectorSpecSwift>(cppType);
|
|
39
|
+
std::shared_ptr<margelo::nitro::margelo::pictureselector::HybridHybridPictureSelectorSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::nitro::margelo::pictureselector::HybridHybridPictureSelectorSpecSwift>(cppType);
|
|
40
40
|
#ifdef NITRO_DEBUG
|
|
41
41
|
if (swiftWrapper == nullptr) [[unlikely]] {
|
|
42
42
|
throw std::runtime_error("Class \"HybridHybridPictureSelectorSpec\" is not implemented in Swift!");
|
|
@@ -46,4 +46,4 @@ namespace margelo::pictureselector::bridge::swift {
|
|
|
46
46
|
return swiftPart.toUnsafe();
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
} // namespace margelo::pictureselector::bridge::swift
|
|
49
|
+
} // namespace margelo::nitro::margelo::pictureselector::bridge::swift
|
|
@@ -9,17 +9,17 @@
|
|
|
9
9
|
|
|
10
10
|
// Forward declarations of C++ defined types
|
|
11
11
|
// Forward declaration of `CompressOptions` to properly resolve imports.
|
|
12
|
-
namespace margelo::pictureselector { struct CompressOptions; }
|
|
12
|
+
namespace margelo::nitro::margelo::pictureselector { struct CompressOptions; }
|
|
13
13
|
// Forward declaration of `CropOptions` to properly resolve imports.
|
|
14
|
-
namespace margelo::pictureselector { struct CropOptions; }
|
|
14
|
+
namespace margelo::nitro::margelo::pictureselector { struct CropOptions; }
|
|
15
15
|
// Forward declaration of `HybridHybridPictureSelectorSpec` to properly resolve imports.
|
|
16
|
-
namespace margelo::pictureselector { class HybridHybridPictureSelectorSpec; }
|
|
16
|
+
namespace margelo::nitro::margelo::pictureselector { class HybridHybridPictureSelectorSpec; }
|
|
17
17
|
// Forward declaration of `MediaAsset` to properly resolve imports.
|
|
18
|
-
namespace margelo::pictureselector { struct MediaAsset; }
|
|
18
|
+
namespace margelo::nitro::margelo::pictureselector { struct MediaAsset; }
|
|
19
19
|
// Forward declaration of `MediaType` to properly resolve imports.
|
|
20
|
-
namespace margelo::pictureselector { enum class MediaType; }
|
|
20
|
+
namespace margelo::nitro::margelo::pictureselector { enum class MediaType; }
|
|
21
21
|
// Forward declaration of `PickerTheme` to properly resolve imports.
|
|
22
|
-
namespace margelo::pictureselector { enum class PickerTheme; }
|
|
22
|
+
namespace margelo::nitro::margelo::pictureselector { enum class PickerTheme; }
|
|
23
23
|
|
|
24
24
|
// Forward declarations of Swift defined types
|
|
25
25
|
// Forward declaration of `HybridHybridPictureSelectorSpec_cxx` to properly resolve imports.
|
|
@@ -46,7 +46,7 @@ namespace NitroPictureSelector { class HybridHybridPictureSelectorSpec_cxx; }
|
|
|
46
46
|
* Contains specialized versions of C++ templated types so they can be accessed from Swift,
|
|
47
47
|
* as well as helper functions to interact with those C++ types from Swift.
|
|
48
48
|
*/
|
|
49
|
-
namespace margelo::pictureselector::bridge::swift {
|
|
49
|
+
namespace margelo::nitro::margelo::pictureselector::bridge::swift {
|
|
50
50
|
|
|
51
51
|
// pragma MARK: std::optional<std::string>
|
|
52
52
|
/**
|
|
@@ -267,4 +267,4 @@ namespace margelo::pictureselector::bridge::swift {
|
|
|
267
267
|
return Result<std::shared_ptr<Promise<std::vector<MediaAsset>>>>::withError(error);
|
|
268
268
|
}
|
|
269
269
|
|
|
270
|
-
} // namespace margelo::pictureselector::bridge::swift
|
|
270
|
+
} // namespace margelo::nitro::margelo::pictureselector::bridge::swift
|
|
@@ -9,19 +9,19 @@
|
|
|
9
9
|
|
|
10
10
|
// Forward declarations of C++ defined types
|
|
11
11
|
// Forward declaration of `CompressOptions` to properly resolve imports.
|
|
12
|
-
namespace margelo::pictureselector { struct CompressOptions; }
|
|
12
|
+
namespace margelo::nitro::margelo::pictureselector { struct CompressOptions; }
|
|
13
13
|
// Forward declaration of `CropOptions` to properly resolve imports.
|
|
14
|
-
namespace margelo::pictureselector { struct CropOptions; }
|
|
14
|
+
namespace margelo::nitro::margelo::pictureselector { struct CropOptions; }
|
|
15
15
|
// Forward declaration of `HybridHybridPictureSelectorSpec` to properly resolve imports.
|
|
16
|
-
namespace margelo::pictureselector { class HybridHybridPictureSelectorSpec; }
|
|
16
|
+
namespace margelo::nitro::margelo::pictureselector { class HybridHybridPictureSelectorSpec; }
|
|
17
17
|
// Forward declaration of `MediaAsset` to properly resolve imports.
|
|
18
|
-
namespace margelo::pictureselector { struct MediaAsset; }
|
|
18
|
+
namespace margelo::nitro::margelo::pictureselector { struct MediaAsset; }
|
|
19
19
|
// Forward declaration of `MediaType` to properly resolve imports.
|
|
20
|
-
namespace margelo::pictureselector { enum class MediaType; }
|
|
20
|
+
namespace margelo::nitro::margelo::pictureselector { enum class MediaType; }
|
|
21
21
|
// Forward declaration of `PickerTheme` to properly resolve imports.
|
|
22
|
-
namespace margelo::pictureselector { enum class PickerTheme; }
|
|
22
|
+
namespace margelo::nitro::margelo::pictureselector { enum class PickerTheme; }
|
|
23
23
|
// Forward declaration of `PictureSelectorOptions` to properly resolve imports.
|
|
24
|
-
namespace margelo::pictureselector { struct PictureSelectorOptions; }
|
|
24
|
+
namespace margelo::nitro::margelo::pictureselector { struct PictureSelectorOptions; }
|
|
25
25
|
|
|
26
26
|
// Include C++ defined types
|
|
27
27
|
#include "CompressOptions.hpp"
|
|
@@ -13,17 +13,17 @@
|
|
|
13
13
|
namespace NitroPictureSelector { class HybridHybridPictureSelectorSpec_cxx; }
|
|
14
14
|
|
|
15
15
|
// Forward declaration of `MediaAsset` to properly resolve imports.
|
|
16
|
-
namespace margelo::pictureselector { struct MediaAsset; }
|
|
16
|
+
namespace margelo::nitro::margelo::pictureselector { struct MediaAsset; }
|
|
17
17
|
// Forward declaration of `PictureSelectorOptions` to properly resolve imports.
|
|
18
|
-
namespace margelo::pictureselector { struct PictureSelectorOptions; }
|
|
18
|
+
namespace margelo::nitro::margelo::pictureselector { struct PictureSelectorOptions; }
|
|
19
19
|
// Forward declaration of `MediaType` to properly resolve imports.
|
|
20
|
-
namespace margelo::pictureselector { enum class MediaType; }
|
|
20
|
+
namespace margelo::nitro::margelo::pictureselector { enum class MediaType; }
|
|
21
21
|
// Forward declaration of `CropOptions` to properly resolve imports.
|
|
22
|
-
namespace margelo::pictureselector { struct CropOptions; }
|
|
22
|
+
namespace margelo::nitro::margelo::pictureselector { struct CropOptions; }
|
|
23
23
|
// Forward declaration of `CompressOptions` to properly resolve imports.
|
|
24
|
-
namespace margelo::pictureselector { struct CompressOptions; }
|
|
24
|
+
namespace margelo::nitro::margelo::pictureselector { struct CompressOptions; }
|
|
25
25
|
// Forward declaration of `PickerTheme` to properly resolve imports.
|
|
26
|
-
namespace margelo::pictureselector { enum class PickerTheme; }
|
|
26
|
+
namespace margelo::nitro::margelo::pictureselector { enum class PickerTheme; }
|
|
27
27
|
|
|
28
28
|
#include "MediaAsset.hpp"
|
|
29
29
|
#include <vector>
|
|
@@ -38,7 +38,7 @@ namespace margelo::pictureselector { enum class PickerTheme; }
|
|
|
38
38
|
|
|
39
39
|
#include "NitroPictureSelector-Swift-Cxx-Umbrella.hpp"
|
|
40
40
|
|
|
41
|
-
namespace margelo::pictureselector {
|
|
41
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
42
42
|
|
|
43
43
|
/**
|
|
44
44
|
* The C++ part of HybridHybridPictureSelectorSpec_cxx.swift.
|
|
@@ -107,4 +107,4 @@ namespace margelo::pictureselector {
|
|
|
107
107
|
NitroPictureSelector::HybridHybridPictureSelectorSpec_cxx _swiftPart;
|
|
108
108
|
};
|
|
109
109
|
|
|
110
|
-
} // namespace margelo::pictureselector
|
|
110
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
|
|
33
33
|
#include <optional>
|
|
34
34
|
|
|
35
|
-
namespace margelo::pictureselector {
|
|
35
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
38
|
* A struct which can be represented as a JavaScript object (CompressOptions).
|
|
@@ -52,23 +52,23 @@ namespace margelo::pictureselector {
|
|
|
52
52
|
friend bool operator==(const CompressOptions& lhs, const CompressOptions& rhs) = default;
|
|
53
53
|
};
|
|
54
54
|
|
|
55
|
-
} // namespace margelo::pictureselector
|
|
55
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
56
56
|
|
|
57
57
|
namespace margelo::nitro {
|
|
58
58
|
|
|
59
59
|
// C++ CompressOptions <> JS CompressOptions (object)
|
|
60
60
|
template <>
|
|
61
|
-
struct JSIConverter<margelo::pictureselector::CompressOptions> final {
|
|
62
|
-
static inline margelo::pictureselector::CompressOptions fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
61
|
+
struct JSIConverter<margelo::nitro::margelo::pictureselector::CompressOptions> final {
|
|
62
|
+
static inline margelo::nitro::margelo::pictureselector::CompressOptions fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
63
63
|
jsi::Object obj = arg.asObject(runtime);
|
|
64
|
-
return margelo::pictureselector::CompressOptions(
|
|
64
|
+
return margelo::nitro::margelo::pictureselector::CompressOptions(
|
|
65
65
|
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "enabled"))),
|
|
66
66
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "quality"))),
|
|
67
67
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "maxWidth"))),
|
|
68
68
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "maxHeight")))
|
|
69
69
|
);
|
|
70
70
|
}
|
|
71
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::pictureselector::CompressOptions& arg) {
|
|
71
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::margelo::pictureselector::CompressOptions& arg) {
|
|
72
72
|
jsi::Object obj(runtime);
|
|
73
73
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "enabled"), JSIConverter<bool>::toJSI(runtime, arg.enabled));
|
|
74
74
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "quality"), JSIConverter<std::optional<double>>::toJSI(runtime, arg.quality));
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
|
|
33
33
|
#include <optional>
|
|
34
34
|
|
|
35
|
-
namespace margelo::pictureselector {
|
|
35
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
38
|
* A struct which can be represented as a JavaScript object (CropOptions).
|
|
@@ -53,16 +53,16 @@ namespace margelo::pictureselector {
|
|
|
53
53
|
friend bool operator==(const CropOptions& lhs, const CropOptions& rhs) = default;
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
-
} // namespace margelo::pictureselector
|
|
56
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
57
57
|
|
|
58
58
|
namespace margelo::nitro {
|
|
59
59
|
|
|
60
60
|
// C++ CropOptions <> JS CropOptions (object)
|
|
61
61
|
template <>
|
|
62
|
-
struct JSIConverter<margelo::pictureselector::CropOptions> final {
|
|
63
|
-
static inline margelo::pictureselector::CropOptions fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
62
|
+
struct JSIConverter<margelo::nitro::margelo::pictureselector::CropOptions> final {
|
|
63
|
+
static inline margelo::nitro::margelo::pictureselector::CropOptions fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
64
64
|
jsi::Object obj = arg.asObject(runtime);
|
|
65
|
-
return margelo::pictureselector::CropOptions(
|
|
65
|
+
return margelo::nitro::margelo::pictureselector::CropOptions(
|
|
66
66
|
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "enabled"))),
|
|
67
67
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "freeStyle"))),
|
|
68
68
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "circular"))),
|
|
@@ -70,7 +70,7 @@ namespace margelo::nitro {
|
|
|
70
70
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "ratioY")))
|
|
71
71
|
);
|
|
72
72
|
}
|
|
73
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::pictureselector::CropOptions& arg) {
|
|
73
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::margelo::pictureselector::CropOptions& arg) {
|
|
74
74
|
jsi::Object obj(runtime);
|
|
75
75
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "enabled"), JSIConverter<bool>::toJSI(runtime, arg.enabled));
|
|
76
76
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "freeStyle"), JSIConverter<std::optional<bool>>::toJSI(runtime, arg.freeStyle));
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
#include "HybridHybridPictureSelectorSpec.hpp"
|
|
9
9
|
|
|
10
|
-
namespace margelo::pictureselector {
|
|
10
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
11
11
|
|
|
12
12
|
void HybridHybridPictureSelectorSpec::loadHybridMethods() {
|
|
13
13
|
// load base methods/properties
|
|
@@ -19,4 +19,4 @@ namespace margelo::pictureselector {
|
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
} // namespace margelo::pictureselector
|
|
22
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -14,16 +14,16 @@
|
|
|
14
14
|
#endif
|
|
15
15
|
|
|
16
16
|
// Forward declaration of `MediaAsset` to properly resolve imports.
|
|
17
|
-
namespace margelo::pictureselector { struct MediaAsset; }
|
|
17
|
+
namespace margelo::nitro::margelo::pictureselector { struct MediaAsset; }
|
|
18
18
|
// Forward declaration of `PictureSelectorOptions` to properly resolve imports.
|
|
19
|
-
namespace margelo::pictureselector { struct PictureSelectorOptions; }
|
|
19
|
+
namespace margelo::nitro::margelo::pictureselector { struct PictureSelectorOptions; }
|
|
20
20
|
|
|
21
21
|
#include "MediaAsset.hpp"
|
|
22
22
|
#include <vector>
|
|
23
23
|
#include <NitroModules/Promise.hpp>
|
|
24
24
|
#include "PictureSelectorOptions.hpp"
|
|
25
25
|
|
|
26
|
-
namespace margelo::pictureselector {
|
|
26
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
27
27
|
|
|
28
28
|
using namespace margelo::nitro;
|
|
29
29
|
|
|
@@ -62,9 +62,8 @@ namespace margelo::pictureselector {
|
|
|
62
62
|
void loadHybridMethods() override;
|
|
63
63
|
|
|
64
64
|
protected:
|
|
65
|
-
// Tag for logging
|
|
66
|
-
|
|
67
|
-
static constexpr auto TAG = "PictureSelector";
|
|
65
|
+
// Tag for logging
|
|
66
|
+
static constexpr auto TAG = "HybridPictureSelector";
|
|
68
67
|
};
|
|
69
68
|
|
|
70
|
-
} // namespace margelo::pictureselector
|
|
69
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
#include <string>
|
|
34
34
|
#include <optional>
|
|
35
35
|
|
|
36
|
-
namespace margelo::pictureselector {
|
|
36
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
37
37
|
|
|
38
38
|
/**
|
|
39
39
|
* A struct which can be represented as a JavaScript object (MediaAsset).
|
|
@@ -60,16 +60,16 @@ namespace margelo::pictureselector {
|
|
|
60
60
|
friend bool operator==(const MediaAsset& lhs, const MediaAsset& rhs) = default;
|
|
61
61
|
};
|
|
62
62
|
|
|
63
|
-
} // namespace margelo::pictureselector
|
|
63
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
64
64
|
|
|
65
65
|
namespace margelo::nitro {
|
|
66
66
|
|
|
67
67
|
// C++ MediaAsset <> JS MediaAsset (object)
|
|
68
68
|
template <>
|
|
69
|
-
struct JSIConverter<margelo::pictureselector::MediaAsset> final {
|
|
70
|
-
static inline margelo::pictureselector::MediaAsset fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
69
|
+
struct JSIConverter<margelo::nitro::margelo::pictureselector::MediaAsset> final {
|
|
70
|
+
static inline margelo::nitro::margelo::pictureselector::MediaAsset fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
71
71
|
jsi::Object obj = arg.asObject(runtime);
|
|
72
|
-
return margelo::pictureselector::MediaAsset(
|
|
72
|
+
return margelo::nitro::margelo::pictureselector::MediaAsset(
|
|
73
73
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "uri"))),
|
|
74
74
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "type"))),
|
|
75
75
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "mimeType"))),
|
|
@@ -83,7 +83,7 @@ namespace margelo::nitro {
|
|
|
83
83
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "bucketName")))
|
|
84
84
|
);
|
|
85
85
|
}
|
|
86
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::pictureselector::MediaAsset& arg) {
|
|
86
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::margelo::pictureselector::MediaAsset& arg) {
|
|
87
87
|
jsi::Object obj(runtime);
|
|
88
88
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "uri"), JSIConverter<std::string>::toJSI(runtime, arg.uri));
|
|
89
89
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "type"), JSIConverter<std::string>::toJSI(runtime, arg.type));
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
24
|
#endif
|
|
25
25
|
|
|
26
|
-
namespace margelo::pictureselector {
|
|
26
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
29
|
* An enum which can be represented as a JavaScript union (MediaType).
|
|
@@ -34,28 +34,28 @@ namespace margelo::pictureselector {
|
|
|
34
34
|
ALL SWIFT_NAME(all) = 2,
|
|
35
35
|
} CLOSED_ENUM;
|
|
36
36
|
|
|
37
|
-
} // namespace margelo::pictureselector
|
|
37
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
38
38
|
|
|
39
39
|
namespace margelo::nitro {
|
|
40
40
|
|
|
41
41
|
// C++ MediaType <> JS MediaType (union)
|
|
42
42
|
template <>
|
|
43
|
-
struct JSIConverter<margelo::pictureselector::MediaType> final {
|
|
44
|
-
static inline margelo::pictureselector::MediaType fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
43
|
+
struct JSIConverter<margelo::nitro::margelo::pictureselector::MediaType> final {
|
|
44
|
+
static inline margelo::nitro::margelo::pictureselector::MediaType fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
45
45
|
std::string unionValue = JSIConverter<std::string>::fromJSI(runtime, arg);
|
|
46
46
|
switch (hashString(unionValue.c_str(), unionValue.size())) {
|
|
47
|
-
case hashString("image"): return margelo::pictureselector::MediaType::IMAGE;
|
|
48
|
-
case hashString("video"): return margelo::pictureselector::MediaType::VIDEO;
|
|
49
|
-
case hashString("all"): return margelo::pictureselector::MediaType::ALL;
|
|
47
|
+
case hashString("image"): return margelo::nitro::margelo::pictureselector::MediaType::IMAGE;
|
|
48
|
+
case hashString("video"): return margelo::nitro::margelo::pictureselector::MediaType::VIDEO;
|
|
49
|
+
case hashString("all"): return margelo::nitro::margelo::pictureselector::MediaType::ALL;
|
|
50
50
|
default: [[unlikely]]
|
|
51
51
|
throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum MediaType - invalid value!");
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, margelo::pictureselector::MediaType arg) {
|
|
54
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, margelo::nitro::margelo::pictureselector::MediaType arg) {
|
|
55
55
|
switch (arg) {
|
|
56
|
-
case margelo::pictureselector::MediaType::IMAGE: return JSIConverter<std::string>::toJSI(runtime, "image");
|
|
57
|
-
case margelo::pictureselector::MediaType::VIDEO: return JSIConverter<std::string>::toJSI(runtime, "video");
|
|
58
|
-
case margelo::pictureselector::MediaType::ALL: return JSIConverter<std::string>::toJSI(runtime, "all");
|
|
56
|
+
case margelo::nitro::margelo::pictureselector::MediaType::IMAGE: return JSIConverter<std::string>::toJSI(runtime, "image");
|
|
57
|
+
case margelo::nitro::margelo::pictureselector::MediaType::VIDEO: return JSIConverter<std::string>::toJSI(runtime, "video");
|
|
58
|
+
case margelo::nitro::margelo::pictureselector::MediaType::ALL: return JSIConverter<std::string>::toJSI(runtime, "all");
|
|
59
59
|
default: [[unlikely]]
|
|
60
60
|
throw std::invalid_argument("Cannot convert MediaType to JS - invalid value: "
|
|
61
61
|
+ std::to_string(static_cast<int>(arg)) + "!");
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
24
|
#endif
|
|
25
25
|
|
|
26
|
-
namespace margelo::pictureselector {
|
|
26
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
29
|
* An enum which can be represented as a JavaScript union (PickerTheme).
|
|
@@ -35,30 +35,30 @@ namespace margelo::pictureselector {
|
|
|
35
35
|
DARK SWIFT_NAME(dark) = 3,
|
|
36
36
|
} CLOSED_ENUM;
|
|
37
37
|
|
|
38
|
-
} // namespace margelo::pictureselector
|
|
38
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
39
39
|
|
|
40
40
|
namespace margelo::nitro {
|
|
41
41
|
|
|
42
42
|
// C++ PickerTheme <> JS PickerTheme (union)
|
|
43
43
|
template <>
|
|
44
|
-
struct JSIConverter<margelo::pictureselector::PickerTheme> final {
|
|
45
|
-
static inline margelo::pictureselector::PickerTheme fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
44
|
+
struct JSIConverter<margelo::nitro::margelo::pictureselector::PickerTheme> final {
|
|
45
|
+
static inline margelo::nitro::margelo::pictureselector::PickerTheme fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
46
46
|
std::string unionValue = JSIConverter<std::string>::fromJSI(runtime, arg);
|
|
47
47
|
switch (hashString(unionValue.c_str(), unionValue.size())) {
|
|
48
|
-
case hashString("default"): return margelo::pictureselector::PickerTheme::DEFAULT;
|
|
49
|
-
case hashString("wechat"): return margelo::pictureselector::PickerTheme::WECHAT;
|
|
50
|
-
case hashString("white"): return margelo::pictureselector::PickerTheme::WHITE;
|
|
51
|
-
case hashString("dark"): return margelo::pictureselector::PickerTheme::DARK;
|
|
48
|
+
case hashString("default"): return margelo::nitro::margelo::pictureselector::PickerTheme::DEFAULT;
|
|
49
|
+
case hashString("wechat"): return margelo::nitro::margelo::pictureselector::PickerTheme::WECHAT;
|
|
50
|
+
case hashString("white"): return margelo::nitro::margelo::pictureselector::PickerTheme::WHITE;
|
|
51
|
+
case hashString("dark"): return margelo::nitro::margelo::pictureselector::PickerTheme::DARK;
|
|
52
52
|
default: [[unlikely]]
|
|
53
53
|
throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum PickerTheme - invalid value!");
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, margelo::pictureselector::PickerTheme arg) {
|
|
56
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, margelo::nitro::margelo::pictureselector::PickerTheme arg) {
|
|
57
57
|
switch (arg) {
|
|
58
|
-
case margelo::pictureselector::PickerTheme::DEFAULT: return JSIConverter<std::string>::toJSI(runtime, "default");
|
|
59
|
-
case margelo::pictureselector::PickerTheme::WECHAT: return JSIConverter<std::string>::toJSI(runtime, "wechat");
|
|
60
|
-
case margelo::pictureselector::PickerTheme::WHITE: return JSIConverter<std::string>::toJSI(runtime, "white");
|
|
61
|
-
case margelo::pictureselector::PickerTheme::DARK: return JSIConverter<std::string>::toJSI(runtime, "dark");
|
|
58
|
+
case margelo::nitro::margelo::pictureselector::PickerTheme::DEFAULT: return JSIConverter<std::string>::toJSI(runtime, "default");
|
|
59
|
+
case margelo::nitro::margelo::pictureselector::PickerTheme::WECHAT: return JSIConverter<std::string>::toJSI(runtime, "wechat");
|
|
60
|
+
case margelo::nitro::margelo::pictureselector::PickerTheme::WHITE: return JSIConverter<std::string>::toJSI(runtime, "white");
|
|
61
|
+
case margelo::nitro::margelo::pictureselector::PickerTheme::DARK: return JSIConverter<std::string>::toJSI(runtime, "dark");
|
|
62
62
|
default: [[unlikely]]
|
|
63
63
|
throw std::invalid_argument("Cannot convert PickerTheme to JS - invalid value: "
|
|
64
64
|
+ std::to_string(static_cast<int>(arg)) + "!");
|
|
@@ -29,13 +29,13 @@
|
|
|
29
29
|
#endif
|
|
30
30
|
|
|
31
31
|
// Forward declaration of `MediaType` to properly resolve imports.
|
|
32
|
-
namespace margelo::pictureselector { enum class MediaType; }
|
|
32
|
+
namespace margelo::nitro::margelo::pictureselector { enum class MediaType; }
|
|
33
33
|
// Forward declaration of `CropOptions` to properly resolve imports.
|
|
34
|
-
namespace margelo::pictureselector { struct CropOptions; }
|
|
34
|
+
namespace margelo::nitro::margelo::pictureselector { struct CropOptions; }
|
|
35
35
|
// Forward declaration of `CompressOptions` to properly resolve imports.
|
|
36
|
-
namespace margelo::pictureselector { struct CompressOptions; }
|
|
36
|
+
namespace margelo::nitro::margelo::pictureselector { struct CompressOptions; }
|
|
37
37
|
// Forward declaration of `PickerTheme` to properly resolve imports.
|
|
38
|
-
namespace margelo::pictureselector { enum class PickerTheme; }
|
|
38
|
+
namespace margelo::nitro::margelo::pictureselector { enum class PickerTheme; }
|
|
39
39
|
|
|
40
40
|
#include "MediaType.hpp"
|
|
41
41
|
#include <optional>
|
|
@@ -45,7 +45,7 @@ namespace margelo::pictureselector { enum class PickerTheme; }
|
|
|
45
45
|
#include <string>
|
|
46
46
|
#include <vector>
|
|
47
47
|
|
|
48
|
-
namespace margelo::pictureselector {
|
|
48
|
+
namespace margelo::nitro::margelo::pictureselector {
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
51
|
* A struct which can be represented as a JavaScript object (PictureSelectorOptions).
|
|
@@ -71,38 +71,38 @@ namespace margelo::pictureselector {
|
|
|
71
71
|
friend bool operator==(const PictureSelectorOptions& lhs, const PictureSelectorOptions& rhs) = default;
|
|
72
72
|
};
|
|
73
73
|
|
|
74
|
-
} // namespace margelo::pictureselector
|
|
74
|
+
} // namespace margelo::nitro::margelo::pictureselector
|
|
75
75
|
|
|
76
76
|
namespace margelo::nitro {
|
|
77
77
|
|
|
78
78
|
// C++ PictureSelectorOptions <> JS PictureSelectorOptions (object)
|
|
79
79
|
template <>
|
|
80
|
-
struct JSIConverter<margelo::pictureselector::PictureSelectorOptions> final {
|
|
81
|
-
static inline margelo::pictureselector::PictureSelectorOptions fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
80
|
+
struct JSIConverter<margelo::nitro::margelo::pictureselector::PictureSelectorOptions> final {
|
|
81
|
+
static inline margelo::nitro::margelo::pictureselector::PictureSelectorOptions fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
82
82
|
jsi::Object obj = arg.asObject(runtime);
|
|
83
|
-
return margelo::pictureselector::PictureSelectorOptions(
|
|
84
|
-
JSIConverter<std::optional<margelo::pictureselector::MediaType>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "mediaType"))),
|
|
83
|
+
return margelo::nitro::margelo::pictureselector::PictureSelectorOptions(
|
|
84
|
+
JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::MediaType>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "mediaType"))),
|
|
85
85
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "maxCount"))),
|
|
86
86
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "enableCamera"))),
|
|
87
|
-
JSIConverter<std::optional<margelo::pictureselector::CropOptions>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "crop"))),
|
|
88
|
-
JSIConverter<std::optional<margelo::pictureselector::CompressOptions>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "compress"))),
|
|
87
|
+
JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::CropOptions>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "crop"))),
|
|
88
|
+
JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::CompressOptions>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "compress"))),
|
|
89
89
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "maxVideoDuration"))),
|
|
90
90
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "minVideoDuration"))),
|
|
91
|
-
JSIConverter<std::optional<margelo::pictureselector::PickerTheme>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "theme"))),
|
|
91
|
+
JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::PickerTheme>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "theme"))),
|
|
92
92
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "themeColor"))),
|
|
93
93
|
JSIConverter<std::optional<std::vector<std::string>>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "selectedAssets")))
|
|
94
94
|
);
|
|
95
95
|
}
|
|
96
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::pictureselector::PictureSelectorOptions& arg) {
|
|
96
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::margelo::pictureselector::PictureSelectorOptions& arg) {
|
|
97
97
|
jsi::Object obj(runtime);
|
|
98
|
-
obj.setProperty(runtime, PropNameIDCache::get(runtime, "mediaType"), JSIConverter<std::optional<margelo::pictureselector::MediaType>>::toJSI(runtime, arg.mediaType));
|
|
98
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "mediaType"), JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::MediaType>>::toJSI(runtime, arg.mediaType));
|
|
99
99
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "maxCount"), JSIConverter<std::optional<double>>::toJSI(runtime, arg.maxCount));
|
|
100
100
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "enableCamera"), JSIConverter<std::optional<bool>>::toJSI(runtime, arg.enableCamera));
|
|
101
|
-
obj.setProperty(runtime, PropNameIDCache::get(runtime, "crop"), JSIConverter<std::optional<margelo::pictureselector::CropOptions>>::toJSI(runtime, arg.crop));
|
|
102
|
-
obj.setProperty(runtime, PropNameIDCache::get(runtime, "compress"), JSIConverter<std::optional<margelo::pictureselector::CompressOptions>>::toJSI(runtime, arg.compress));
|
|
101
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "crop"), JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::CropOptions>>::toJSI(runtime, arg.crop));
|
|
102
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "compress"), JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::CompressOptions>>::toJSI(runtime, arg.compress));
|
|
103
103
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "maxVideoDuration"), JSIConverter<std::optional<double>>::toJSI(runtime, arg.maxVideoDuration));
|
|
104
104
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "minVideoDuration"), JSIConverter<std::optional<double>>::toJSI(runtime, arg.minVideoDuration));
|
|
105
|
-
obj.setProperty(runtime, PropNameIDCache::get(runtime, "theme"), JSIConverter<std::optional<margelo::pictureselector::PickerTheme>>::toJSI(runtime, arg.theme));
|
|
105
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "theme"), JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::PickerTheme>>::toJSI(runtime, arg.theme));
|
|
106
106
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "themeColor"), JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.themeColor));
|
|
107
107
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "selectedAssets"), JSIConverter<std::optional<std::vector<std::string>>>::toJSI(runtime, arg.selectedAssets));
|
|
108
108
|
return obj;
|
|
@@ -115,14 +115,14 @@ namespace margelo::nitro {
|
|
|
115
115
|
if (!nitro::isPlainObject(runtime, obj)) {
|
|
116
116
|
return false;
|
|
117
117
|
}
|
|
118
|
-
if (!JSIConverter<std::optional<margelo::pictureselector::MediaType>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "mediaType")))) return false;
|
|
118
|
+
if (!JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::MediaType>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "mediaType")))) return false;
|
|
119
119
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "maxCount")))) return false;
|
|
120
120
|
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "enableCamera")))) return false;
|
|
121
|
-
if (!JSIConverter<std::optional<margelo::pictureselector::CropOptions>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "crop")))) return false;
|
|
122
|
-
if (!JSIConverter<std::optional<margelo::pictureselector::CompressOptions>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "compress")))) return false;
|
|
121
|
+
if (!JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::CropOptions>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "crop")))) return false;
|
|
122
|
+
if (!JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::CompressOptions>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "compress")))) return false;
|
|
123
123
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "maxVideoDuration")))) return false;
|
|
124
124
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "minVideoDuration")))) return false;
|
|
125
|
-
if (!JSIConverter<std::optional<margelo::pictureselector::PickerTheme>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "theme")))) return false;
|
|
125
|
+
if (!JSIConverter<std::optional<margelo::nitro::margelo::pictureselector::PickerTheme>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "theme")))) return false;
|
|
126
126
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "themeColor")))) return false;
|
|
127
127
|
if (!JSIConverter<std::optional<std::vector<std::string>>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "selectedAssets")))) return false;
|
|
128
128
|
return true;
|
package/package.json
CHANGED