react-native-email-imap-smtp 0.1.0
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/EmailImapSmtp.podspec +29 -0
- package/LICENSE +20 -0
- package/README.md +121 -0
- package/android/CMakeLists.txt +24 -0
- package/android/build.gradle +117 -0
- package/android/src/main/AndroidManifest.xml +3 -0
- package/android/src/main/cpp/cpp-adapter.cpp +11 -0
- package/android/src/main/java/com/margelo/nitro/emailimapsmtp/EmailImapSmtp.kt +1533 -0
- package/android/src/main/java/com/margelo/nitro/emailimapsmtp/EmailImapSmtpPackage.kt +22 -0
- package/ios/EmailImapSmtp.swift +5 -0
- package/lib/module/EmailImapSmtp.nitro.js +4 -0
- package/lib/module/EmailImapSmtp.nitro.js.map +1 -0
- package/lib/module/NativeEmailImapSmtp.js +14 -0
- package/lib/module/NativeEmailImapSmtp.js.map +1 -0
- package/lib/module/index.js +64 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/native.js +227 -0
- package/lib/module/native.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/module/web.js +107 -0
- package/lib/module/web.js.map +1 -0
- package/lib/module/windows.js +156 -0
- package/lib/module/windows.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/EmailImapSmtp.nitro.d.ts +268 -0
- package/lib/typescript/src/EmailImapSmtp.nitro.d.ts.map +1 -0
- package/lib/typescript/src/NativeEmailImapSmtp.d.ts +36 -0
- package/lib/typescript/src/NativeEmailImapSmtp.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +33 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/native.d.ts +32 -0
- package/lib/typescript/src/native.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +261 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/lib/typescript/src/web.d.ts +32 -0
- package/lib/typescript/src/web.d.ts.map +1 -0
- package/lib/typescript/src/windows.d.ts +32 -0
- package/lib/typescript/src/windows.d.ts.map +1 -0
- package/nitro.json +23 -0
- package/nitrogen/generated/android/c++/JAppendResult.hpp +65 -0
- package/nitrogen/generated/android/c++/JAttachmentInfo.hpp +96 -0
- package/nitrogen/generated/android/c++/JConnectionConfig.hpp +94 -0
- package/nitrogen/generated/android/c++/JConnectionResult.hpp +73 -0
- package/nitrogen/generated/android/c++/JDeleteResult.hpp +87 -0
- package/nitrogen/generated/android/c++/JEmailAddress.hpp +61 -0
- package/nitrogen/generated/android/c++/JEmailBody.hpp +84 -0
- package/nitrogen/generated/android/c++/JEmailMessage.hpp +273 -0
- package/nitrogen/generated/android/c++/JFetchEmailsOptions.hpp +110 -0
- package/nitrogen/generated/android/c++/JFolderInfo.hpp +126 -0
- package/nitrogen/generated/android/c++/JFunc_void_IdleNotification.hpp +79 -0
- package/nitrogen/generated/android/c++/JHybridEmailImapSmtpSpec.cpp +697 -0
- package/nitrogen/generated/android/c++/JHybridEmailImapSmtpSpec.hpp +92 -0
- package/nitrogen/generated/android/c++/JIdleNotification.hpp +78 -0
- package/nitrogen/generated/android/c++/JImapServerInfo.hpp +84 -0
- package/nitrogen/generated/android/c++/JMailboxInfo.hpp +134 -0
- package/nitrogen/generated/android/c++/JMailboxListItem.hpp +92 -0
- package/nitrogen/generated/android/c++/JQuotaInfo.hpp +78 -0
- package/nitrogen/generated/android/c++/JSearchCriteria.hpp +187 -0
- package/nitrogen/generated/android/c++/JSearchHeader.hpp +61 -0
- package/nitrogen/generated/android/c++/JSendMailOptions.hpp +229 -0
- package/nitrogen/generated/android/c++/JSendMailResult.hpp +88 -0
- package/nitrogen/generated/android/c++/JSmtpAttachment.hpp +80 -0
- package/nitrogen/generated/android/c++/JSmtpConnectionConfig.hpp +98 -0
- package/nitrogen/generated/android/c++/JSmtpServerInfo.hpp +102 -0
- package/nitrogen/generated/android/c++/JVariant_ImapServerInfo_SmtpServerInfo.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_ImapServerInfo_SmtpServerInfo.hpp +73 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_AttachmentInfo.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_AttachmentInfo.hpp +75 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_EmailMessage.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_EmailMessage.hpp +83 -0
- package/nitrogen/generated/android/emailimapsmtp+autolinking.cmake +84 -0
- package/nitrogen/generated/android/emailimapsmtp+autolinking.gradle +27 -0
- package/nitrogen/generated/android/emailimapsmtpOnLoad.cpp +56 -0
- package/nitrogen/generated/android/emailimapsmtpOnLoad.hpp +34 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/AppendResult.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/AttachmentInfo.kt +96 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/ConnectionConfig.kt +96 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/ConnectionResult.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/DeleteResult.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/EmailAddress.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/EmailBody.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/EmailMessage.kt +156 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/FetchEmailsOptions.kt +116 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/FolderInfo.kt +91 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/Func_void_IdleNotification.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/HybridEmailImapSmtpSpec.kt +178 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/IdleNotification.kt +76 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/ImapServerInfo.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/MailboxInfo.kt +101 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/MailboxListItem.kt +71 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/QuotaInfo.kt +76 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/SearchCriteria.kt +196 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/SearchHeader.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/SendMailOptions.kt +126 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/SendMailResult.kt +86 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/SmtpAttachment.kt +76 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/SmtpConnectionConfig.kt +101 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/SmtpServerInfo.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/Variant_ImapServerInfo_SmtpServerInfo.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/Variant_NullType_AttachmentInfo.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/Variant_NullType_EmailMessage.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/emailimapsmtp/emailimapsmtpOnLoad.kt +35 -0
- package/nitrogen/generated/ios/EmailImapSmtp+autolinking.rb +62 -0
- package/nitrogen/generated/ios/EmailImapSmtp-Swift-Cxx-Bridge.cpp +161 -0
- package/nitrogen/generated/ios/EmailImapSmtp-Swift-Cxx-Bridge.hpp +1132 -0
- package/nitrogen/generated/ios/EmailImapSmtp-Swift-Cxx-Umbrella.hpp +118 -0
- package/nitrogen/generated/ios/EmailImapSmtpAutolinking.mm +33 -0
- package/nitrogen/generated/ios/EmailImapSmtpAutolinking.swift +26 -0
- package/nitrogen/generated/ios/c++/HybridEmailImapSmtpSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridEmailImapSmtpSpecSwift.hpp +390 -0
- package/nitrogen/generated/ios/swift/AppendResult.swift +39 -0
- package/nitrogen/generated/ios/swift/AttachmentInfo.swift +113 -0
- package/nitrogen/generated/ios/swift/ConnectionConfig.swift +87 -0
- package/nitrogen/generated/ios/swift/ConnectionResult.swift +84 -0
- package/nitrogen/generated/ios/swift/DeleteResult.swift +64 -0
- package/nitrogen/generated/ios/swift/EmailAddress.swift +34 -0
- package/nitrogen/generated/ios/swift/EmailBody.swift +45 -0
- package/nitrogen/generated/ios/swift/EmailMessage.swift +184 -0
- package/nitrogen/generated/ios/swift/FetchEmailsOptions.swift +198 -0
- package/nitrogen/generated/ios/swift/FolderInfo.swift +81 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_AppendResult.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_ConnectionResult.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_DeleteResult.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_IdleNotification.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_MailboxInfo.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_QuotaInfo.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_SendMailResult.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__AttachmentInfo_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__EmailMessage_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_AttachmentInfo_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_EmailMessage_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_FolderInfo_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_MailboxListItem_.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridEmailImapSmtpSpec.swift +84 -0
- package/nitrogen/generated/ios/swift/HybridEmailImapSmtpSpec_cxx.swift +759 -0
- package/nitrogen/generated/ios/swift/IdleNotification.swift +93 -0
- package/nitrogen/generated/ios/swift/ImapServerInfo.swift +45 -0
- package/nitrogen/generated/ios/swift/MailboxInfo.swift +91 -0
- package/nitrogen/generated/ios/swift/MailboxListItem.swift +55 -0
- package/nitrogen/generated/ios/swift/QuotaInfo.swift +80 -0
- package/nitrogen/generated/ios/swift/SearchCriteria.swift +485 -0
- package/nitrogen/generated/ios/swift/SearchHeader.swift +34 -0
- package/nitrogen/generated/ios/swift/SendMailOptions.swift +310 -0
- package/nitrogen/generated/ios/swift/SendMailResult.swift +155 -0
- package/nitrogen/generated/ios/swift/SmtpAttachment.swift +80 -0
- package/nitrogen/generated/ios/swift/SmtpConnectionConfig.swift +105 -0
- package/nitrogen/generated/ios/swift/SmtpServerInfo.swift +51 -0
- package/nitrogen/generated/ios/swift/Variant_ImapServerInfo_SmtpServerInfo.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_AttachmentInfo.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_EmailMessage.swift +30 -0
- package/nitrogen/generated/shared/c++/AppendResult.hpp +91 -0
- package/nitrogen/generated/shared/c++/AttachmentInfo.hpp +121 -0
- package/nitrogen/generated/shared/c++/ConnectionConfig.hpp +120 -0
- package/nitrogen/generated/shared/c++/ConnectionResult.hpp +98 -0
- package/nitrogen/generated/shared/c++/DeleteResult.hpp +93 -0
- package/nitrogen/generated/shared/c++/EmailAddress.hpp +87 -0
- package/nitrogen/generated/shared/c++/EmailBody.hpp +92 -0
- package/nitrogen/generated/shared/c++/EmailMessage.hpp +177 -0
- package/nitrogen/generated/shared/c++/FetchEmailsOptions.hpp +136 -0
- package/nitrogen/generated/shared/c++/FolderInfo.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridEmailImapSmtpSpec.cpp +50 -0
- package/nitrogen/generated/shared/c++/HybridEmailImapSmtpSpec.hpp +145 -0
- package/nitrogen/generated/shared/c++/IdleNotification.hpp +104 -0
- package/nitrogen/generated/shared/c++/ImapServerInfo.hpp +92 -0
- package/nitrogen/generated/shared/c++/MailboxInfo.hpp +124 -0
- package/nitrogen/generated/shared/c++/MailboxListItem.hpp +100 -0
- package/nitrogen/generated/shared/c++/QuotaInfo.hpp +104 -0
- package/nitrogen/generated/shared/c++/SearchCriteria.hpp +203 -0
- package/nitrogen/generated/shared/c++/SearchHeader.hpp +87 -0
- package/nitrogen/generated/shared/c++/SendMailOptions.hpp +151 -0
- package/nitrogen/generated/shared/c++/SendMailResult.hpp +113 -0
- package/nitrogen/generated/shared/c++/SmtpAttachment.hpp +105 -0
- package/nitrogen/generated/shared/c++/SmtpConnectionConfig.hpp +124 -0
- package/nitrogen/generated/shared/c++/SmtpServerInfo.hpp +92 -0
- package/package.json +196 -0
- package/react-native.config.js +27 -0
- package/src/EmailImapSmtp.nitro.ts +333 -0
- package/src/NativeEmailImapSmtp.ts +100 -0
- package/src/index.tsx +166 -0
- package/src/native.ts +305 -0
- package/src/types.ts +328 -0
- package/src/web.ts +196 -0
- package/src/windows.ts +304 -0
- package/windows/EmailImapSmtp.cpp +735 -0
- package/windows/EmailImapSmtp.h +137 -0
- package/windows/EmailImapSmtpModule.cpp +10 -0
- package/windows/EmailImapSmtpModule.h +139 -0
- package/windows/EmailImapSmtpPackage.cpp +15 -0
- package/windows/EmailImapSmtpPackage.h +13 -0
- package/windows/ImapProtocol.cpp +1382 -0
- package/windows/ImapProtocol.h +97 -0
- package/windows/ProtocolDefs.h +300 -0
- package/windows/SmtpProtocol.cpp +334 -0
- package/windows/SmtpProtocol.h +36 -0
- package/windows/TlsSocket.cpp +818 -0
- package/windows/TlsSocket.h +87 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JFetchEmailsOptions.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <fbjni/fbjni.h>
|
|
11
|
+
#include "FetchEmailsOptions.hpp"
|
|
12
|
+
|
|
13
|
+
#include <optional>
|
|
14
|
+
#include <string>
|
|
15
|
+
|
|
16
|
+
namespace margelo::nitro::emailimapsmtp {
|
|
17
|
+
|
|
18
|
+
using namespace facebook;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* The C++ JNI bridge between the C++ struct "FetchEmailsOptions" and the Kotlin data class "FetchEmailsOptions".
|
|
22
|
+
*/
|
|
23
|
+
struct JFetchEmailsOptions final: public jni::JavaClass<JFetchEmailsOptions> {
|
|
24
|
+
public:
|
|
25
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/emailimapsmtp/FetchEmailsOptions;";
|
|
26
|
+
|
|
27
|
+
public:
|
|
28
|
+
/**
|
|
29
|
+
* Convert this Java/Kotlin-based struct to the C++ struct FetchEmailsOptions by copying all values to C++.
|
|
30
|
+
*/
|
|
31
|
+
[[maybe_unused]]
|
|
32
|
+
[[nodiscard]]
|
|
33
|
+
FetchEmailsOptions toCpp() const {
|
|
34
|
+
static const auto clazz = javaClassStatic();
|
|
35
|
+
static const auto fieldFrom = clazz->getField<jni::JDouble>("from");
|
|
36
|
+
jni::local_ref<jni::JDouble> from = this->getFieldValue(fieldFrom);
|
|
37
|
+
static const auto fieldTo = clazz->getField<jni::JDouble>("to");
|
|
38
|
+
jni::local_ref<jni::JDouble> to = this->getFieldValue(fieldTo);
|
|
39
|
+
static const auto fieldRangeType = clazz->getField<jni::JString>("rangeType");
|
|
40
|
+
jni::local_ref<jni::JString> rangeType = this->getFieldValue(fieldRangeType);
|
|
41
|
+
static const auto fieldPage = clazz->getField<jni::JDouble>("page");
|
|
42
|
+
jni::local_ref<jni::JDouble> page = this->getFieldValue(fieldPage);
|
|
43
|
+
static const auto fieldPageSize = clazz->getField<jni::JDouble>("pageSize");
|
|
44
|
+
jni::local_ref<jni::JDouble> pageSize = this->getFieldValue(fieldPageSize);
|
|
45
|
+
static const auto fieldSince = clazz->getField<jni::JString>("since");
|
|
46
|
+
jni::local_ref<jni::JString> since = this->getFieldValue(fieldSince);
|
|
47
|
+
static const auto fieldBefore = clazz->getField<jni::JString>("before");
|
|
48
|
+
jni::local_ref<jni::JString> before = this->getFieldValue(fieldBefore);
|
|
49
|
+
static const auto fieldMailbox = clazz->getField<jni::JString>("mailbox");
|
|
50
|
+
jni::local_ref<jni::JString> mailbox = this->getFieldValue(fieldMailbox);
|
|
51
|
+
static const auto fieldFetchBody = clazz->getField<jboolean>("fetchBody");
|
|
52
|
+
jboolean fetchBody = this->getFieldValue(fieldFetchBody);
|
|
53
|
+
static const auto fieldFetchAttachments = clazz->getField<jboolean>("fetchAttachments");
|
|
54
|
+
jboolean fetchAttachments = this->getFieldValue(fieldFetchAttachments);
|
|
55
|
+
static const auto fieldFetchFlags = clazz->getField<jboolean>("fetchFlags");
|
|
56
|
+
jboolean fetchFlags = this->getFieldValue(fieldFetchFlags);
|
|
57
|
+
static const auto fieldFetchHeaders = clazz->getField<jboolean>("fetchHeaders");
|
|
58
|
+
jboolean fetchHeaders = this->getFieldValue(fieldFetchHeaders);
|
|
59
|
+
static const auto fieldFetchFullContent = clazz->getField<jboolean>("fetchFullContent");
|
|
60
|
+
jboolean fetchFullContent = this->getFieldValue(fieldFetchFullContent);
|
|
61
|
+
static const auto fieldMaxBodySize = clazz->getField<double>("maxBodySize");
|
|
62
|
+
double maxBodySize = this->getFieldValue(fieldMaxBodySize);
|
|
63
|
+
return FetchEmailsOptions(
|
|
64
|
+
from != nullptr ? std::make_optional(from->value()) : std::nullopt,
|
|
65
|
+
to != nullptr ? std::make_optional(to->value()) : std::nullopt,
|
|
66
|
+
rangeType != nullptr ? std::make_optional(rangeType->toStdString()) : std::nullopt,
|
|
67
|
+
page != nullptr ? std::make_optional(page->value()) : std::nullopt,
|
|
68
|
+
pageSize != nullptr ? std::make_optional(pageSize->value()) : std::nullopt,
|
|
69
|
+
since != nullptr ? std::make_optional(since->toStdString()) : std::nullopt,
|
|
70
|
+
before != nullptr ? std::make_optional(before->toStdString()) : std::nullopt,
|
|
71
|
+
mailbox != nullptr ? std::make_optional(mailbox->toStdString()) : std::nullopt,
|
|
72
|
+
static_cast<bool>(fetchBody),
|
|
73
|
+
static_cast<bool>(fetchAttachments),
|
|
74
|
+
static_cast<bool>(fetchFlags),
|
|
75
|
+
static_cast<bool>(fetchHeaders),
|
|
76
|
+
static_cast<bool>(fetchFullContent),
|
|
77
|
+
maxBodySize
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
public:
|
|
82
|
+
/**
|
|
83
|
+
* Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
|
|
84
|
+
*/
|
|
85
|
+
[[maybe_unused]]
|
|
86
|
+
static jni::local_ref<JFetchEmailsOptions::javaobject> fromCpp(const FetchEmailsOptions& value) {
|
|
87
|
+
using JSignature = JFetchEmailsOptions(jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jboolean, jboolean, jboolean, jboolean, jboolean, double);
|
|
88
|
+
static const auto clazz = javaClassStatic();
|
|
89
|
+
static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
|
|
90
|
+
return create(
|
|
91
|
+
clazz,
|
|
92
|
+
value.from.has_value() ? jni::JDouble::valueOf(value.from.value()) : nullptr,
|
|
93
|
+
value.to.has_value() ? jni::JDouble::valueOf(value.to.value()) : nullptr,
|
|
94
|
+
value.rangeType.has_value() ? jni::make_jstring(value.rangeType.value()) : nullptr,
|
|
95
|
+
value.page.has_value() ? jni::JDouble::valueOf(value.page.value()) : nullptr,
|
|
96
|
+
value.pageSize.has_value() ? jni::JDouble::valueOf(value.pageSize.value()) : nullptr,
|
|
97
|
+
value.since.has_value() ? jni::make_jstring(value.since.value()) : nullptr,
|
|
98
|
+
value.before.has_value() ? jni::make_jstring(value.before.value()) : nullptr,
|
|
99
|
+
value.mailbox.has_value() ? jni::make_jstring(value.mailbox.value()) : nullptr,
|
|
100
|
+
value.fetchBody,
|
|
101
|
+
value.fetchAttachments,
|
|
102
|
+
value.fetchFlags,
|
|
103
|
+
value.fetchHeaders,
|
|
104
|
+
value.fetchFullContent,
|
|
105
|
+
value.maxBodySize
|
|
106
|
+
);
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
} // namespace margelo::nitro::emailimapsmtp
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JFolderInfo.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <fbjni/fbjni.h>
|
|
11
|
+
#include "FolderInfo.hpp"
|
|
12
|
+
|
|
13
|
+
#include <string>
|
|
14
|
+
#include <vector>
|
|
15
|
+
|
|
16
|
+
namespace margelo::nitro::emailimapsmtp {
|
|
17
|
+
|
|
18
|
+
using namespace facebook;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* The C++ JNI bridge between the C++ struct "FolderInfo" and the Kotlin data class "FolderInfo".
|
|
22
|
+
*/
|
|
23
|
+
struct JFolderInfo final: public jni::JavaClass<JFolderInfo> {
|
|
24
|
+
public:
|
|
25
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/emailimapsmtp/FolderInfo;";
|
|
26
|
+
|
|
27
|
+
public:
|
|
28
|
+
/**
|
|
29
|
+
* Convert this Java/Kotlin-based struct to the C++ struct FolderInfo by copying all values to C++.
|
|
30
|
+
*/
|
|
31
|
+
[[maybe_unused]]
|
|
32
|
+
[[nodiscard]]
|
|
33
|
+
FolderInfo toCpp() const {
|
|
34
|
+
static const auto clazz = javaClassStatic();
|
|
35
|
+
static const auto fieldName = clazz->getField<jni::JString>("name");
|
|
36
|
+
jni::local_ref<jni::JString> name = this->getFieldValue(fieldName);
|
|
37
|
+
static const auto fieldPath = clazz->getField<jni::JString>("path");
|
|
38
|
+
jni::local_ref<jni::JString> path = this->getFieldValue(fieldPath);
|
|
39
|
+
static const auto fieldDelimiter = clazz->getField<jni::JString>("delimiter");
|
|
40
|
+
jni::local_ref<jni::JString> delimiter = this->getFieldValue(fieldDelimiter);
|
|
41
|
+
static const auto fieldParent = clazz->getField<jni::JString>("parent");
|
|
42
|
+
jni::local_ref<jni::JString> parent = this->getFieldValue(fieldParent);
|
|
43
|
+
static const auto fieldChildren = clazz->getField<jni::JArrayClass<jni::JString>>("children");
|
|
44
|
+
jni::local_ref<jni::JArrayClass<jni::JString>> children = this->getFieldValue(fieldChildren);
|
|
45
|
+
static const auto fieldFlags = clazz->getField<jni::JArrayClass<jni::JString>>("flags");
|
|
46
|
+
jni::local_ref<jni::JArrayClass<jni::JString>> flags = this->getFieldValue(fieldFlags);
|
|
47
|
+
static const auto fieldSubscribed = clazz->getField<jboolean>("subscribed");
|
|
48
|
+
jboolean subscribed = this->getFieldValue(fieldSubscribed);
|
|
49
|
+
static const auto fieldMessageCount = clazz->getField<double>("messageCount");
|
|
50
|
+
double messageCount = this->getFieldValue(fieldMessageCount);
|
|
51
|
+
static const auto fieldUnseenCount = clazz->getField<double>("unseenCount");
|
|
52
|
+
double unseenCount = this->getFieldValue(fieldUnseenCount);
|
|
53
|
+
return FolderInfo(
|
|
54
|
+
name->toStdString(),
|
|
55
|
+
path->toStdString(),
|
|
56
|
+
delimiter->toStdString(),
|
|
57
|
+
parent->toStdString(),
|
|
58
|
+
[&](auto&& __input) {
|
|
59
|
+
size_t __size = __input->size();
|
|
60
|
+
std::vector<std::string> __vector;
|
|
61
|
+
__vector.reserve(__size);
|
|
62
|
+
for (size_t __i = 0; __i < __size; __i++) {
|
|
63
|
+
auto __element = __input->getElement(__i);
|
|
64
|
+
__vector.push_back(__element->toStdString());
|
|
65
|
+
}
|
|
66
|
+
return __vector;
|
|
67
|
+
}(children),
|
|
68
|
+
[&](auto&& __input) {
|
|
69
|
+
size_t __size = __input->size();
|
|
70
|
+
std::vector<std::string> __vector;
|
|
71
|
+
__vector.reserve(__size);
|
|
72
|
+
for (size_t __i = 0; __i < __size; __i++) {
|
|
73
|
+
auto __element = __input->getElement(__i);
|
|
74
|
+
__vector.push_back(__element->toStdString());
|
|
75
|
+
}
|
|
76
|
+
return __vector;
|
|
77
|
+
}(flags),
|
|
78
|
+
static_cast<bool>(subscribed),
|
|
79
|
+
messageCount,
|
|
80
|
+
unseenCount
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
public:
|
|
85
|
+
/**
|
|
86
|
+
* Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
|
|
87
|
+
*/
|
|
88
|
+
[[maybe_unused]]
|
|
89
|
+
static jni::local_ref<JFolderInfo::javaobject> fromCpp(const FolderInfo& value) {
|
|
90
|
+
using JSignature = JFolderInfo(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JArrayClass<jni::JString>>, jni::alias_ref<jni::JArrayClass<jni::JString>>, jboolean, double, double);
|
|
91
|
+
static const auto clazz = javaClassStatic();
|
|
92
|
+
static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
|
|
93
|
+
return create(
|
|
94
|
+
clazz,
|
|
95
|
+
jni::make_jstring(value.name),
|
|
96
|
+
jni::make_jstring(value.path),
|
|
97
|
+
jni::make_jstring(value.delimiter),
|
|
98
|
+
jni::make_jstring(value.parent),
|
|
99
|
+
[&](auto&& __input) {
|
|
100
|
+
size_t __size = __input.size();
|
|
101
|
+
jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
|
|
102
|
+
for (size_t __i = 0; __i < __size; __i++) {
|
|
103
|
+
const auto& __element = __input[__i];
|
|
104
|
+
auto __elementJni = jni::make_jstring(__element);
|
|
105
|
+
__array->setElement(__i, *__elementJni);
|
|
106
|
+
}
|
|
107
|
+
return __array;
|
|
108
|
+
}(value.children),
|
|
109
|
+
[&](auto&& __input) {
|
|
110
|
+
size_t __size = __input.size();
|
|
111
|
+
jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
|
|
112
|
+
for (size_t __i = 0; __i < __size; __i++) {
|
|
113
|
+
const auto& __element = __input[__i];
|
|
114
|
+
auto __elementJni = jni::make_jstring(__element);
|
|
115
|
+
__array->setElement(__i, *__elementJni);
|
|
116
|
+
}
|
|
117
|
+
return __array;
|
|
118
|
+
}(value.flags),
|
|
119
|
+
value.subscribed,
|
|
120
|
+
value.messageCount,
|
|
121
|
+
value.unseenCount
|
|
122
|
+
);
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
} // namespace margelo::nitro::emailimapsmtp
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JFunc_void_IdleNotification.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <fbjni/fbjni.h>
|
|
11
|
+
#include <functional>
|
|
12
|
+
|
|
13
|
+
#include "IdleNotification.hpp"
|
|
14
|
+
#include <functional>
|
|
15
|
+
#include <NitroModules/JNICallable.hpp>
|
|
16
|
+
#include "JIdleNotification.hpp"
|
|
17
|
+
#include <string>
|
|
18
|
+
#include <optional>
|
|
19
|
+
|
|
20
|
+
namespace margelo::nitro::emailimapsmtp {
|
|
21
|
+
|
|
22
|
+
using namespace facebook;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Represents the Java/Kotlin callback `(notification: IdleNotification) -> Unit`.
|
|
26
|
+
* This can be passed around between C++ and Java/Kotlin.
|
|
27
|
+
*/
|
|
28
|
+
struct JFunc_void_IdleNotification: public jni::JavaClass<JFunc_void_IdleNotification> {
|
|
29
|
+
public:
|
|
30
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/emailimapsmtp/Func_void_IdleNotification;";
|
|
31
|
+
|
|
32
|
+
public:
|
|
33
|
+
/**
|
|
34
|
+
* Invokes the function this `JFunc_void_IdleNotification` instance holds through JNI.
|
|
35
|
+
*/
|
|
36
|
+
void invoke(const IdleNotification& notification) const {
|
|
37
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JIdleNotification> /* notification */)>("invoke");
|
|
38
|
+
method(self(), JIdleNotification::fromCpp(notification));
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* An implementation of Func_void_IdleNotification that is backed by a C++ implementation (using `std::function<...>`)
|
|
44
|
+
*/
|
|
45
|
+
class JFunc_void_IdleNotification_cxx final: public jni::HybridClass<JFunc_void_IdleNotification_cxx, JFunc_void_IdleNotification> {
|
|
46
|
+
public:
|
|
47
|
+
static jni::local_ref<JFunc_void_IdleNotification::javaobject> fromCpp(const std::function<void(const IdleNotification& /* notification */)>& func) {
|
|
48
|
+
return JFunc_void_IdleNotification_cxx::newObjectCxxArgs(func);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public:
|
|
52
|
+
/**
|
|
53
|
+
* Invokes the C++ `std::function<...>` this `JFunc_void_IdleNotification_cxx` instance holds.
|
|
54
|
+
*/
|
|
55
|
+
void invoke_cxx(jni::alias_ref<JIdleNotification> notification) {
|
|
56
|
+
_func(notification->toCpp());
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
public:
|
|
60
|
+
[[nodiscard]]
|
|
61
|
+
inline const std::function<void(const IdleNotification& /* notification */)>& getFunction() const {
|
|
62
|
+
return _func;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
public:
|
|
66
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/emailimapsmtp/Func_void_IdleNotification_cxx;";
|
|
67
|
+
static void registerNatives() {
|
|
68
|
+
registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_IdleNotification_cxx::invoke_cxx)});
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
private:
|
|
72
|
+
explicit JFunc_void_IdleNotification_cxx(const std::function<void(const IdleNotification& /* notification */)>& func): _func(func) { }
|
|
73
|
+
|
|
74
|
+
private:
|
|
75
|
+
friend HybridBase;
|
|
76
|
+
std::function<void(const IdleNotification& /* notification */)> _func;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
} // namespace margelo::nitro::emailimapsmtp
|