securiti-consent-sdk 1.137.0-9rc → 1.138.0-10rc
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/NitroSecuritiConsentSdk.podspec +1 -1
- package/android/build.gradle +1 -1
- package/nitrogen/generated/.gitattributes +1 -1
- package/nitrogen/generated/android/NitroSecuritiConsentSdkOnLoad.cpp +3 -1
- package/nitrogen/generated/android/c++/JHybridConsentSDKSpec.cpp +2 -7
- package/nitrogen/generated/android/c++/JHybridConsentSDKSpec.hpp +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/AppPermission.kt +0 -19
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/BannerConfig.kt +0 -65
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/CmpSDKOptions.kt +0 -23
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/CustomColors.kt +0 -17
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/Func_void_bool.kt +0 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/PermissionConsent.kt +0 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/PostConsentsRequest.kt +0 -25
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/Purpose.kt +0 -25
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/PurposeConsent.kt +0 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/SDK.kt +0 -19
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/securiticonsentsdk/SettingsPrompt.kt +0 -11
- package/nitrogen/generated/ios/NitroSecuritiConsentSdk-Swift-Cxx-Bridge.cpp +13 -13
- package/nitrogen/generated/ios/NitroSecuritiConsentSdk-Swift-Cxx-Bridge.hpp +109 -172
- package/nitrogen/generated/ios/NitroSecuritiConsentSdk-Swift-Cxx-Umbrella.hpp +1 -2
- package/nitrogen/generated/ios/NitroSecuritiConsentSdkAutolinking.mm +1 -1
- package/nitrogen/generated/ios/NitroSecuritiConsentSdkAutolinking.swift +2 -2
- package/nitrogen/generated/ios/c++/HybridConsentSDKSpecSwift.hpp +2 -4
- package/nitrogen/generated/ios/swift/AppPermission.swift +6 -12
- package/nitrogen/generated/ios/swift/BannerConfig.swift +24 -47
- package/nitrogen/generated/ios/swift/CmpSDKOptions.swift +4 -8
- package/nitrogen/generated/ios/swift/CustomColors.swift +8 -16
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +5 -6
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__optional_BannerConfig_.swift +1 -3
- package/nitrogen/generated/ios/swift/Func_void_std__optional_SettingsPrompt_.swift +1 -3
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__vector_AppPermission_.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__vector_Purpose_.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__vector_SDK_.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridConsentSDKSpec.swift +1 -2
- package/nitrogen/generated/ios/swift/HybridConsentSDKSpec_cxx.swift +6 -15
- package/nitrogen/generated/ios/swift/PostConsentsRequest.swift +2 -4
- package/nitrogen/generated/ios/swift/Purpose.swift +7 -14
- package/nitrogen/generated/ios/swift/SDK.swift +7 -14
- package/nitrogen/generated/ios/swift/SettingsPrompt.swift +5 -10
- package/nitrogen/generated/shared/c++/AppPermission.hpp +6 -4
- package/nitrogen/generated/shared/c++/BannerConfig.hpp +9 -7
- package/nitrogen/generated/shared/c++/CmpSDKOptions.hpp +6 -4
- package/nitrogen/generated/shared/c++/CustomColors.hpp +7 -5
- package/nitrogen/generated/shared/c++/HybridConsentSDKSpec.hpp +3 -3
- package/nitrogen/generated/shared/c++/PermissionConsent.hpp +6 -4
- package/nitrogen/generated/shared/c++/PostConsentsRequest.hpp +13 -11
- package/nitrogen/generated/shared/c++/Purpose.hpp +10 -8
- package/nitrogen/generated/shared/c++/PurposeConsent.hpp +6 -4
- package/nitrogen/generated/shared/c++/SDK.hpp +6 -4
- package/nitrogen/generated/shared/c++/SettingsPrompt.hpp +7 -5
- package/package.json +1 -1
|
@@ -121,8 +121,7 @@ public extension Purpose {
|
|
|
121
121
|
@inline(__always)
|
|
122
122
|
get {
|
|
123
123
|
return { () -> String? in
|
|
124
|
-
if
|
|
125
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__purposeName)
|
|
124
|
+
if let __unwrapped = self.__purposeName.value {
|
|
126
125
|
return String(__unwrapped)
|
|
127
126
|
} else {
|
|
128
127
|
return nil
|
|
@@ -145,8 +144,7 @@ public extension Purpose {
|
|
|
145
144
|
@inline(__always)
|
|
146
145
|
get {
|
|
147
146
|
return { () -> String? in
|
|
148
|
-
if
|
|
149
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__purposeDescription)
|
|
147
|
+
if let __unwrapped = self.__purposeDescription.value {
|
|
150
148
|
return String(__unwrapped)
|
|
151
149
|
} else {
|
|
152
150
|
return nil
|
|
@@ -169,8 +167,7 @@ public extension Purpose {
|
|
|
169
167
|
@inline(__always)
|
|
170
168
|
get {
|
|
171
169
|
return { () -> [SDK]? in
|
|
172
|
-
if
|
|
173
|
-
let __unwrapped = bridge.get_std__optional_std__vector_SDK__(self.__sdks)
|
|
170
|
+
if let __unwrapped = self.__sdks.value {
|
|
174
171
|
return __unwrapped.map({ __item in __item })
|
|
175
172
|
} else {
|
|
176
173
|
return nil
|
|
@@ -199,8 +196,7 @@ public extension Purpose {
|
|
|
199
196
|
@inline(__always)
|
|
200
197
|
get {
|
|
201
198
|
return { () -> String? in
|
|
202
|
-
if
|
|
203
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__consentStatus)
|
|
199
|
+
if let __unwrapped = self.__consentStatus.value {
|
|
204
200
|
return String(__unwrapped)
|
|
205
201
|
} else {
|
|
206
202
|
return nil
|
|
@@ -240,8 +236,7 @@ public extension Purpose {
|
|
|
240
236
|
@inline(__always)
|
|
241
237
|
get {
|
|
242
238
|
return { () -> String? in
|
|
243
|
-
if
|
|
244
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__optOutText)
|
|
239
|
+
if let __unwrapped = self.__optOutText.value {
|
|
245
240
|
return String(__unwrapped)
|
|
246
241
|
} else {
|
|
247
242
|
return nil
|
|
@@ -298,8 +293,7 @@ public extension Purpose {
|
|
|
298
293
|
@inline(__always)
|
|
299
294
|
get {
|
|
300
295
|
return { () -> String? in
|
|
301
|
-
if
|
|
302
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__gadDescription)
|
|
296
|
+
if let __unwrapped = self.__gadDescription.value {
|
|
303
297
|
return String(__unwrapped)
|
|
304
298
|
} else {
|
|
305
299
|
return nil
|
|
@@ -339,8 +333,7 @@ public extension Purpose {
|
|
|
339
333
|
@inline(__always)
|
|
340
334
|
get {
|
|
341
335
|
return { () -> String? in
|
|
342
|
-
if
|
|
343
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__attDescription)
|
|
336
|
+
if let __unwrapped = self.__attDescription.value {
|
|
344
337
|
return String(__unwrapped)
|
|
345
338
|
} else {
|
|
346
339
|
return nil
|
|
@@ -103,8 +103,7 @@ public extension SDK {
|
|
|
103
103
|
@inline(__always)
|
|
104
104
|
get {
|
|
105
105
|
return { () -> String? in
|
|
106
|
-
if
|
|
107
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__namespaceId)
|
|
106
|
+
if let __unwrapped = self.__namespaceId.value {
|
|
108
107
|
return String(__unwrapped)
|
|
109
108
|
} else {
|
|
110
109
|
return nil
|
|
@@ -127,8 +126,7 @@ public extension SDK {
|
|
|
127
126
|
@inline(__always)
|
|
128
127
|
get {
|
|
129
128
|
return { () -> String? in
|
|
130
|
-
if
|
|
131
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__sdkName)
|
|
129
|
+
if let __unwrapped = self.__sdkName.value {
|
|
132
130
|
return String(__unwrapped)
|
|
133
131
|
} else {
|
|
134
132
|
return nil
|
|
@@ -151,8 +149,7 @@ public extension SDK {
|
|
|
151
149
|
@inline(__always)
|
|
152
150
|
get {
|
|
153
151
|
return { () -> String? in
|
|
154
|
-
if
|
|
155
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__sdkDescription)
|
|
152
|
+
if let __unwrapped = self.__sdkDescription.value {
|
|
156
153
|
return String(__unwrapped)
|
|
157
154
|
} else {
|
|
158
155
|
return nil
|
|
@@ -175,8 +172,7 @@ public extension SDK {
|
|
|
175
172
|
@inline(__always)
|
|
176
173
|
get {
|
|
177
174
|
return { () -> String? in
|
|
178
|
-
if
|
|
179
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__vendor)
|
|
175
|
+
if let __unwrapped = self.__vendor.value {
|
|
180
176
|
return String(__unwrapped)
|
|
181
177
|
} else {
|
|
182
178
|
return nil
|
|
@@ -199,8 +195,7 @@ public extension SDK {
|
|
|
199
195
|
@inline(__always)
|
|
200
196
|
get {
|
|
201
197
|
return { () -> String? in
|
|
202
|
-
if
|
|
203
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__logoBase64)
|
|
198
|
+
if let __unwrapped = self.__logoBase64.value {
|
|
204
199
|
return String(__unwrapped)
|
|
205
200
|
} else {
|
|
206
201
|
return nil
|
|
@@ -223,8 +218,7 @@ public extension SDK {
|
|
|
223
218
|
@inline(__always)
|
|
224
219
|
get {
|
|
225
220
|
return { () -> String? in
|
|
226
|
-
if
|
|
227
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__website)
|
|
221
|
+
if let __unwrapped = self.__website.value {
|
|
228
222
|
return String(__unwrapped)
|
|
229
223
|
} else {
|
|
230
224
|
return nil
|
|
@@ -247,8 +241,7 @@ public extension SDK {
|
|
|
247
241
|
@inline(__always)
|
|
248
242
|
get {
|
|
249
243
|
return { () -> [String]? in
|
|
250
|
-
if
|
|
251
|
-
let __unwrapped = bridge.get_std__optional_std__vector_std__string__(self.__matchedBy)
|
|
244
|
+
if let __unwrapped = self.__matchedBy.value {
|
|
252
245
|
return __unwrapped.map({ __item in String(__item) })
|
|
253
246
|
} else {
|
|
254
247
|
return nil
|
|
@@ -62,8 +62,7 @@ public extension SettingsPrompt {
|
|
|
62
62
|
@inline(__always)
|
|
63
63
|
get {
|
|
64
64
|
return { () -> String? in
|
|
65
|
-
if
|
|
66
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__promptHeading)
|
|
65
|
+
if let __unwrapped = self.__promptHeading.value {
|
|
67
66
|
return String(__unwrapped)
|
|
68
67
|
} else {
|
|
69
68
|
return nil
|
|
@@ -86,8 +85,7 @@ public extension SettingsPrompt {
|
|
|
86
85
|
@inline(__always)
|
|
87
86
|
get {
|
|
88
87
|
return { () -> String? in
|
|
89
|
-
if
|
|
90
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__promptMessage)
|
|
88
|
+
if let __unwrapped = self.__promptMessage.value {
|
|
91
89
|
return String(__unwrapped)
|
|
92
90
|
} else {
|
|
93
91
|
return nil
|
|
@@ -110,8 +108,7 @@ public extension SettingsPrompt {
|
|
|
110
108
|
@inline(__always)
|
|
111
109
|
get {
|
|
112
110
|
return { () -> String? in
|
|
113
|
-
if
|
|
114
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__settingsButtonText)
|
|
111
|
+
if let __unwrapped = self.__settingsButtonText.value {
|
|
115
112
|
return String(__unwrapped)
|
|
116
113
|
} else {
|
|
117
114
|
return nil
|
|
@@ -134,8 +131,7 @@ public extension SettingsPrompt {
|
|
|
134
131
|
@inline(__always)
|
|
135
132
|
get {
|
|
136
133
|
return { () -> String? in
|
|
137
|
-
if
|
|
138
|
-
let __unwrapped = bridge.get_std__optional_std__string_(self.__notNowButtonText)
|
|
134
|
+
if let __unwrapped = self.__notNowButtonText.value {
|
|
139
135
|
return String(__unwrapped)
|
|
140
136
|
} else {
|
|
141
137
|
return nil
|
|
@@ -158,8 +154,7 @@ public extension SettingsPrompt {
|
|
|
158
154
|
@inline(__always)
|
|
159
155
|
get {
|
|
160
156
|
return { () -> [String]? in
|
|
161
|
-
if
|
|
162
|
-
let __unwrapped = bridge.get_std__optional_std__vector_std__string__(self.__permissions)
|
|
157
|
+
if let __unwrapped = self.__permissions.value {
|
|
163
158
|
return __unwrapped.map({ __item in String(__item) })
|
|
164
159
|
} else {
|
|
165
160
|
return nil
|
|
@@ -49,12 +49,14 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
49
49
|
|
|
50
50
|
namespace margelo::nitro {
|
|
51
51
|
|
|
52
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
53
|
+
|
|
52
54
|
// C++ AppPermission <> JS AppPermission (object)
|
|
53
55
|
template <>
|
|
54
|
-
struct JSIConverter<
|
|
55
|
-
static inline
|
|
56
|
+
struct JSIConverter<AppPermission> final {
|
|
57
|
+
static inline AppPermission fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
56
58
|
jsi::Object obj = arg.asObject(runtime);
|
|
57
|
-
return
|
|
59
|
+
return AppPermission(
|
|
58
60
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "id")),
|
|
59
61
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "name")),
|
|
60
62
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "permissionId")),
|
|
@@ -66,7 +68,7 @@ namespace margelo::nitro {
|
|
|
66
68
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "isSettingsPromptEnabled"))
|
|
67
69
|
);
|
|
68
70
|
}
|
|
69
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
71
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const AppPermission& arg) {
|
|
70
72
|
jsi::Object obj(runtime);
|
|
71
73
|
obj.setProperty(runtime, "id", JSIConverter<std::optional<double>>::toJSI(runtime, arg.id));
|
|
72
74
|
obj.setProperty(runtime, "name", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.name));
|
|
@@ -75,12 +75,14 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
75
75
|
|
|
76
76
|
namespace margelo::nitro {
|
|
77
77
|
|
|
78
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
79
|
+
|
|
78
80
|
// C++ BannerConfig <> JS BannerConfig (object)
|
|
79
81
|
template <>
|
|
80
|
-
struct JSIConverter<
|
|
81
|
-
static inline
|
|
82
|
+
struct JSIConverter<BannerConfig> final {
|
|
83
|
+
static inline BannerConfig fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
82
84
|
jsi::Object obj = arg.asObject(runtime);
|
|
83
|
-
return
|
|
85
|
+
return BannerConfig(
|
|
84
86
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "hideCloseButton")),
|
|
85
87
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "hideAcceptButton")),
|
|
86
88
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "embedDSRPortalLink")),
|
|
@@ -110,12 +112,12 @@ namespace margelo::nitro {
|
|
|
110
112
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "bannerPosition")),
|
|
111
113
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "buttonShape")),
|
|
112
114
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "companyLogo")),
|
|
113
|
-
JSIConverter<std::optional<
|
|
115
|
+
JSIConverter<std::optional<CustomColors>>::fromJSI(runtime, obj.getProperty(runtime, "customPaletteTheme")),
|
|
114
116
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "shouldShowSettingsPrompt")),
|
|
115
117
|
JSIConverter<std::optional<std::unordered_map<std::string, std::string>>>::fromJSI(runtime, obj.getProperty(runtime, "translations"))
|
|
116
118
|
);
|
|
117
119
|
}
|
|
118
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
120
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const BannerConfig& arg) {
|
|
119
121
|
jsi::Object obj(runtime);
|
|
120
122
|
obj.setProperty(runtime, "hideCloseButton", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.hideCloseButton));
|
|
121
123
|
obj.setProperty(runtime, "hideAcceptButton", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.hideAcceptButton));
|
|
@@ -146,7 +148,7 @@ namespace margelo::nitro {
|
|
|
146
148
|
obj.setProperty(runtime, "bannerPosition", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.bannerPosition));
|
|
147
149
|
obj.setProperty(runtime, "buttonShape", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.buttonShape));
|
|
148
150
|
obj.setProperty(runtime, "companyLogo", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.companyLogo));
|
|
149
|
-
obj.setProperty(runtime, "customPaletteTheme", JSIConverter<std::optional<
|
|
151
|
+
obj.setProperty(runtime, "customPaletteTheme", JSIConverter<std::optional<CustomColors>>::toJSI(runtime, arg.customPaletteTheme));
|
|
150
152
|
obj.setProperty(runtime, "shouldShowSettingsPrompt", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.shouldShowSettingsPrompt));
|
|
151
153
|
obj.setProperty(runtime, "translations", JSIConverter<std::optional<std::unordered_map<std::string, std::string>>>::toJSI(runtime, arg.translations));
|
|
152
154
|
return obj;
|
|
@@ -185,7 +187,7 @@ namespace margelo::nitro {
|
|
|
185
187
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "bannerPosition"))) return false;
|
|
186
188
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "buttonShape"))) return false;
|
|
187
189
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "companyLogo"))) return false;
|
|
188
|
-
if (!JSIConverter<std::optional<
|
|
190
|
+
if (!JSIConverter<std::optional<CustomColors>>::canConvert(runtime, obj.getProperty(runtime, "customPaletteTheme"))) return false;
|
|
189
191
|
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "shouldShowSettingsPrompt"))) return false;
|
|
190
192
|
if (!JSIConverter<std::optional<std::unordered_map<std::string, std::string>>>::canConvert(runtime, obj.getProperty(runtime, "translations"))) return false;
|
|
191
193
|
return true;
|
|
@@ -51,12 +51,14 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
51
51
|
|
|
52
52
|
namespace margelo::nitro {
|
|
53
53
|
|
|
54
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
55
|
+
|
|
54
56
|
// C++ CmpSDKOptions <> JS CmpSDKOptions (object)
|
|
55
57
|
template <>
|
|
56
|
-
struct JSIConverter<
|
|
57
|
-
static inline
|
|
58
|
+
struct JSIConverter<CmpSDKOptions> final {
|
|
59
|
+
static inline CmpSDKOptions fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
58
60
|
jsi::Object obj = arg.asObject(runtime);
|
|
59
|
-
return
|
|
61
|
+
return CmpSDKOptions(
|
|
60
62
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "appURL")),
|
|
61
63
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "cdnURL")),
|
|
62
64
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "tenantID")),
|
|
@@ -70,7 +72,7 @@ namespace margelo::nitro {
|
|
|
70
72
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "mode"))
|
|
71
73
|
);
|
|
72
74
|
}
|
|
73
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
75
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const CmpSDKOptions& arg) {
|
|
74
76
|
jsi::Object obj(runtime);
|
|
75
77
|
obj.setProperty(runtime, "appURL", JSIConverter<std::string>::toJSI(runtime, arg.appURL));
|
|
76
78
|
obj.setProperty(runtime, "cdnURL", JSIConverter<std::string>::toJSI(runtime, arg.cdnURL));
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
#include <string>
|
|
24
23
|
#include <optional>
|
|
24
|
+
#include <string>
|
|
25
25
|
|
|
26
26
|
namespace margelo::nitro::securiticonsentsdk {
|
|
27
27
|
|
|
@@ -48,12 +48,14 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
48
48
|
|
|
49
49
|
namespace margelo::nitro {
|
|
50
50
|
|
|
51
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
52
|
+
|
|
51
53
|
// C++ CustomColors <> JS CustomColors (object)
|
|
52
54
|
template <>
|
|
53
|
-
struct JSIConverter<
|
|
54
|
-
static inline
|
|
55
|
+
struct JSIConverter<CustomColors> final {
|
|
56
|
+
static inline CustomColors fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
55
57
|
jsi::Object obj = arg.asObject(runtime);
|
|
56
|
-
return
|
|
58
|
+
return CustomColors(
|
|
57
59
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "buttonBackground")),
|
|
58
60
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "buttonText")),
|
|
59
61
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "buttonBorder")),
|
|
@@ -64,7 +66,7 @@ namespace margelo::nitro {
|
|
|
64
66
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "preferenceCenterFooterSelector"))
|
|
65
67
|
);
|
|
66
68
|
}
|
|
67
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
69
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const CustomColors& arg) {
|
|
68
70
|
jsi::Object obj(runtime);
|
|
69
71
|
obj.setProperty(runtime, "buttonBackground", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.buttonBackground));
|
|
70
72
|
obj.setProperty(runtime, "buttonText", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.buttonText));
|
|
@@ -30,14 +30,14 @@ namespace margelo::nitro::securiticonsentsdk { struct PostConsentsRequest; }
|
|
|
30
30
|
|
|
31
31
|
#include "CmpSDKOptions.hpp"
|
|
32
32
|
#include <functional>
|
|
33
|
-
#include <string>
|
|
34
33
|
#include <NitroModules/Promise.hpp>
|
|
35
|
-
#include
|
|
34
|
+
#include <string>
|
|
36
35
|
#include <vector>
|
|
36
|
+
#include "AppPermission.hpp"
|
|
37
37
|
#include "Purpose.hpp"
|
|
38
38
|
#include "SDK.hpp"
|
|
39
|
-
#include "BannerConfig.hpp"
|
|
40
39
|
#include <optional>
|
|
40
|
+
#include "BannerConfig.hpp"
|
|
41
41
|
#include "SettingsPrompt.hpp"
|
|
42
42
|
#include "PostConsentsRequest.hpp"
|
|
43
43
|
|
|
@@ -42,18 +42,20 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
42
42
|
|
|
43
43
|
namespace margelo::nitro {
|
|
44
44
|
|
|
45
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
46
|
+
|
|
45
47
|
// C++ PermissionConsent <> JS PermissionConsent (object)
|
|
46
48
|
template <>
|
|
47
|
-
struct JSIConverter<
|
|
48
|
-
static inline
|
|
49
|
+
struct JSIConverter<PermissionConsent> final {
|
|
50
|
+
static inline PermissionConsent fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
49
51
|
jsi::Object obj = arg.asObject(runtime);
|
|
50
|
-
return
|
|
52
|
+
return PermissionConsent(
|
|
51
53
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "permission")),
|
|
52
54
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "consentStatus")),
|
|
53
55
|
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "timestamp"))
|
|
54
56
|
);
|
|
55
57
|
}
|
|
56
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
58
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const PermissionConsent& arg) {
|
|
57
59
|
jsi::Object obj(runtime);
|
|
58
60
|
obj.setProperty(runtime, "permission", JSIConverter<std::string>::toJSI(runtime, arg.permission));
|
|
59
61
|
obj.setProperty(runtime, "consentStatus", JSIConverter<std::string>::toJSI(runtime, arg.consentStatus));
|
|
@@ -24,8 +24,8 @@ namespace margelo::nitro::securiticonsentsdk { struct PurposeConsent; }
|
|
|
24
24
|
namespace margelo::nitro::securiticonsentsdk { struct PermissionConsent; }
|
|
25
25
|
|
|
26
26
|
#include <string>
|
|
27
|
-
#include "PurposeConsent.hpp"
|
|
28
27
|
#include <vector>
|
|
28
|
+
#include "PurposeConsent.hpp"
|
|
29
29
|
#include "PermissionConsent.hpp"
|
|
30
30
|
#include <optional>
|
|
31
31
|
|
|
@@ -58,19 +58,21 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
58
58
|
|
|
59
59
|
namespace margelo::nitro {
|
|
60
60
|
|
|
61
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
62
|
+
|
|
61
63
|
// C++ PostConsentsRequest <> JS PostConsentsRequest (object)
|
|
62
64
|
template <>
|
|
63
|
-
struct JSIConverter<
|
|
64
|
-
static inline
|
|
65
|
+
struct JSIConverter<PostConsentsRequest> final {
|
|
66
|
+
static inline PostConsentsRequest fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
65
67
|
jsi::Object obj = arg.asObject(runtime);
|
|
66
|
-
return
|
|
68
|
+
return PostConsentsRequest(
|
|
67
69
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "uuid")),
|
|
68
70
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "appUUID")),
|
|
69
71
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "device")),
|
|
70
72
|
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, "implicitConsent")),
|
|
71
73
|
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "version")),
|
|
72
|
-
JSIConverter<std::vector<
|
|
73
|
-
JSIConverter<std::vector<
|
|
74
|
+
JSIConverter<std::vector<PurposeConsent>>::fromJSI(runtime, obj.getProperty(runtime, "purposeConsents")),
|
|
75
|
+
JSIConverter<std::vector<PermissionConsent>>::fromJSI(runtime, obj.getProperty(runtime, "permissions")),
|
|
74
76
|
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, "isTestMode")),
|
|
75
77
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "adId")),
|
|
76
78
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "bannerInfo")),
|
|
@@ -78,15 +80,15 @@ namespace margelo::nitro {
|
|
|
78
80
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "platform"))
|
|
79
81
|
);
|
|
80
82
|
}
|
|
81
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
83
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const PostConsentsRequest& arg) {
|
|
82
84
|
jsi::Object obj(runtime);
|
|
83
85
|
obj.setProperty(runtime, "uuid", JSIConverter<std::string>::toJSI(runtime, arg.uuid));
|
|
84
86
|
obj.setProperty(runtime, "appUUID", JSIConverter<std::string>::toJSI(runtime, arg.appUUID));
|
|
85
87
|
obj.setProperty(runtime, "device", JSIConverter<std::string>::toJSI(runtime, arg.device));
|
|
86
88
|
obj.setProperty(runtime, "implicitConsent", JSIConverter<bool>::toJSI(runtime, arg.implicitConsent));
|
|
87
89
|
obj.setProperty(runtime, "version", JSIConverter<double>::toJSI(runtime, arg.version));
|
|
88
|
-
obj.setProperty(runtime, "purposeConsents", JSIConverter<std::vector<
|
|
89
|
-
obj.setProperty(runtime, "permissions", JSIConverter<std::vector<
|
|
90
|
+
obj.setProperty(runtime, "purposeConsents", JSIConverter<std::vector<PurposeConsent>>::toJSI(runtime, arg.purposeConsents));
|
|
91
|
+
obj.setProperty(runtime, "permissions", JSIConverter<std::vector<PermissionConsent>>::toJSI(runtime, arg.permissions));
|
|
90
92
|
obj.setProperty(runtime, "isTestMode", JSIConverter<bool>::toJSI(runtime, arg.isTestMode));
|
|
91
93
|
obj.setProperty(runtime, "adId", JSIConverter<std::string>::toJSI(runtime, arg.adId));
|
|
92
94
|
obj.setProperty(runtime, "bannerInfo", JSIConverter<std::string>::toJSI(runtime, arg.bannerInfo));
|
|
@@ -104,8 +106,8 @@ namespace margelo::nitro {
|
|
|
104
106
|
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "device"))) return false;
|
|
105
107
|
if (!JSIConverter<bool>::canConvert(runtime, obj.getProperty(runtime, "implicitConsent"))) return false;
|
|
106
108
|
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "version"))) return false;
|
|
107
|
-
if (!JSIConverter<std::vector<
|
|
108
|
-
if (!JSIConverter<std::vector<
|
|
109
|
+
if (!JSIConverter<std::vector<PurposeConsent>>::canConvert(runtime, obj.getProperty(runtime, "purposeConsents"))) return false;
|
|
110
|
+
if (!JSIConverter<std::vector<PermissionConsent>>::canConvert(runtime, obj.getProperty(runtime, "permissions"))) return false;
|
|
109
111
|
if (!JSIConverter<bool>::canConvert(runtime, obj.getProperty(runtime, "isTestMode"))) return false;
|
|
110
112
|
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "adId"))) return false;
|
|
111
113
|
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "bannerInfo"))) return false;
|
|
@@ -23,8 +23,8 @@ namespace margelo::nitro::securiticonsentsdk { struct SDK; }
|
|
|
23
23
|
|
|
24
24
|
#include <optional>
|
|
25
25
|
#include <string>
|
|
26
|
-
#include "SDK.hpp"
|
|
27
26
|
#include <vector>
|
|
27
|
+
#include "SDK.hpp"
|
|
28
28
|
|
|
29
29
|
namespace margelo::nitro::securiticonsentsdk {
|
|
30
30
|
|
|
@@ -55,16 +55,18 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
55
55
|
|
|
56
56
|
namespace margelo::nitro {
|
|
57
57
|
|
|
58
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
59
|
+
|
|
58
60
|
// C++ Purpose <> JS Purpose (object)
|
|
59
61
|
template <>
|
|
60
|
-
struct JSIConverter<
|
|
61
|
-
static inline
|
|
62
|
+
struct JSIConverter<Purpose> final {
|
|
63
|
+
static inline Purpose fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
62
64
|
jsi::Object obj = arg.asObject(runtime);
|
|
63
|
-
return
|
|
65
|
+
return Purpose(
|
|
64
66
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "purposeId")),
|
|
65
67
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "purposeName")),
|
|
66
68
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "purposeDescription")),
|
|
67
|
-
JSIConverter<std::optional<std::vector<
|
|
69
|
+
JSIConverter<std::optional<std::vector<SDK>>>::fromJSI(runtime, obj.getProperty(runtime, "sdks")),
|
|
68
70
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "consentStatus")),
|
|
69
71
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "disableOptOut")),
|
|
70
72
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "optOutText")),
|
|
@@ -75,12 +77,12 @@ namespace margelo::nitro {
|
|
|
75
77
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "attDescription"))
|
|
76
78
|
);
|
|
77
79
|
}
|
|
78
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
80
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const Purpose& arg) {
|
|
79
81
|
jsi::Object obj(runtime);
|
|
80
82
|
obj.setProperty(runtime, "purposeId", JSIConverter<std::optional<double>>::toJSI(runtime, arg.purposeId));
|
|
81
83
|
obj.setProperty(runtime, "purposeName", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.purposeName));
|
|
82
84
|
obj.setProperty(runtime, "purposeDescription", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.purposeDescription));
|
|
83
|
-
obj.setProperty(runtime, "sdks", JSIConverter<std::optional<std::vector<
|
|
85
|
+
obj.setProperty(runtime, "sdks", JSIConverter<std::optional<std::vector<SDK>>>::toJSI(runtime, arg.sdks));
|
|
84
86
|
obj.setProperty(runtime, "consentStatus", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.consentStatus));
|
|
85
87
|
obj.setProperty(runtime, "disableOptOut", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.disableOptOut));
|
|
86
88
|
obj.setProperty(runtime, "optOutText", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.optOutText));
|
|
@@ -99,7 +101,7 @@ namespace margelo::nitro {
|
|
|
99
101
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "purposeId"))) return false;
|
|
100
102
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "purposeName"))) return false;
|
|
101
103
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "purposeDescription"))) return false;
|
|
102
|
-
if (!JSIConverter<std::optional<std::vector<
|
|
104
|
+
if (!JSIConverter<std::optional<std::vector<SDK>>>::canConvert(runtime, obj.getProperty(runtime, "sdks"))) return false;
|
|
103
105
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "consentStatus"))) return false;
|
|
104
106
|
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "disableOptOut"))) return false;
|
|
105
107
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "optOutText"))) return false;
|
|
@@ -43,19 +43,21 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
43
43
|
|
|
44
44
|
namespace margelo::nitro {
|
|
45
45
|
|
|
46
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
47
|
+
|
|
46
48
|
// C++ PurposeConsent <> JS PurposeConsent (object)
|
|
47
49
|
template <>
|
|
48
|
-
struct JSIConverter<
|
|
49
|
-
static inline
|
|
50
|
+
struct JSIConverter<PurposeConsent> final {
|
|
51
|
+
static inline PurposeConsent fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
50
52
|
jsi::Object obj = arg.asObject(runtime);
|
|
51
|
-
return
|
|
53
|
+
return PurposeConsent(
|
|
52
54
|
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "purposeID")),
|
|
53
55
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "consentStatus")),
|
|
54
56
|
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "timestamp")),
|
|
55
57
|
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, "isEssential"))
|
|
56
58
|
);
|
|
57
59
|
}
|
|
58
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
60
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const PurposeConsent& arg) {
|
|
59
61
|
jsi::Object obj(runtime);
|
|
60
62
|
obj.setProperty(runtime, "purposeID", JSIConverter<double>::toJSI(runtime, arg.purposeID));
|
|
61
63
|
obj.setProperty(runtime, "consentStatus", JSIConverter<std::string>::toJSI(runtime, arg.consentStatus));
|
|
@@ -50,12 +50,14 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
50
50
|
|
|
51
51
|
namespace margelo::nitro {
|
|
52
52
|
|
|
53
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
54
|
+
|
|
53
55
|
// C++ SDK <> JS SDK (object)
|
|
54
56
|
template <>
|
|
55
|
-
struct JSIConverter<
|
|
56
|
-
static inline
|
|
57
|
+
struct JSIConverter<SDK> final {
|
|
58
|
+
static inline SDK fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
57
59
|
jsi::Object obj = arg.asObject(runtime);
|
|
58
|
-
return
|
|
60
|
+
return SDK(
|
|
59
61
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "sdkId")),
|
|
60
62
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "namespaceId")),
|
|
61
63
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "sdkName")),
|
|
@@ -67,7 +69,7 @@ namespace margelo::nitro {
|
|
|
67
69
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "collectingData"))
|
|
68
70
|
);
|
|
69
71
|
}
|
|
70
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
72
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const SDK& arg) {
|
|
71
73
|
jsi::Object obj(runtime);
|
|
72
74
|
obj.setProperty(runtime, "sdkId", JSIConverter<std::optional<double>>::toJSI(runtime, arg.sdkId));
|
|
73
75
|
obj.setProperty(runtime, "namespaceId", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.namespaceId));
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
#include <string>
|
|
24
23
|
#include <optional>
|
|
24
|
+
#include <string>
|
|
25
25
|
#include <vector>
|
|
26
26
|
|
|
27
27
|
namespace margelo::nitro::securiticonsentsdk {
|
|
@@ -46,12 +46,14 @@ namespace margelo::nitro::securiticonsentsdk {
|
|
|
46
46
|
|
|
47
47
|
namespace margelo::nitro {
|
|
48
48
|
|
|
49
|
+
using namespace margelo::nitro::securiticonsentsdk;
|
|
50
|
+
|
|
49
51
|
// C++ SettingsPrompt <> JS SettingsPrompt (object)
|
|
50
52
|
template <>
|
|
51
|
-
struct JSIConverter<
|
|
52
|
-
static inline
|
|
53
|
+
struct JSIConverter<SettingsPrompt> final {
|
|
54
|
+
static inline SettingsPrompt fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
53
55
|
jsi::Object obj = arg.asObject(runtime);
|
|
54
|
-
return
|
|
56
|
+
return SettingsPrompt(
|
|
55
57
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "promptHeading")),
|
|
56
58
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "promptMessage")),
|
|
57
59
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "settingsButtonText")),
|
|
@@ -59,7 +61,7 @@ namespace margelo::nitro {
|
|
|
59
61
|
JSIConverter<std::optional<std::vector<std::string>>>::fromJSI(runtime, obj.getProperty(runtime, "permissions"))
|
|
60
62
|
);
|
|
61
63
|
}
|
|
62
|
-
static inline jsi::Value toJSI(jsi::Runtime& runtime, const
|
|
64
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const SettingsPrompt& arg) {
|
|
63
65
|
jsi::Object obj(runtime);
|
|
64
66
|
obj.setProperty(runtime, "promptHeading", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.promptHeading));
|
|
65
67
|
obj.setProperty(runtime, "promptMessage", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.promptMessage));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "securiti-consent-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.138.0-10rc",
|
|
4
4
|
"description": "A React Native Library for managing user consent preferences and compliance with privacy regulations. Integrates with Securiti's Consent Management Platform.",
|
|
5
5
|
"main": "lib/index",
|
|
6
6
|
"module": "lib/index",
|