/** * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen). * * Do not edit this file as changes may cause incorrect behavior and will be lost * once the code is regenerated. * * @generated by codegen project: GenerateModuleH.js */ #pragma once #include #include namespace facebook::react { #pragma mark - NativeCookieManagerCookie template struct NativeCookieManagerCookie { P0 name; P1 value; P2 path; P3 domain; P4 version; P5 expires; P6 secure; P7 httpOnly; bool operator==(const NativeCookieManagerCookie &other) const { return name == other.name && value == other.value && path == other.path && domain == other.domain && version == other.version && expires == other.expires && secure == other.secure && httpOnly == other.httpOnly; } }; template struct NativeCookieManagerCookieBridging { static T types; static T fromJs( jsi::Runtime &rt, const jsi::Object &value, const std::shared_ptr &jsInvoker) { T result{ bridging::fromJs(rt, value.getProperty(rt, "name"), jsInvoker), bridging::fromJs(rt, value.getProperty(rt, "value"), jsInvoker), bridging::fromJs(rt, value.getProperty(rt, "path"), jsInvoker), bridging::fromJs(rt, value.getProperty(rt, "domain"), jsInvoker), bridging::fromJs(rt, value.getProperty(rt, "version"), jsInvoker), bridging::fromJs(rt, value.getProperty(rt, "expires"), jsInvoker), bridging::fromJs(rt, value.getProperty(rt, "secure"), jsInvoker), bridging::fromJs(rt, value.getProperty(rt, "httpOnly"), jsInvoker)}; return result; } #ifdef DEBUG static jsi::String nameToJs(jsi::Runtime &rt, decltype(types.name) value) { return bridging::toJs(rt, value); } static jsi::String valueToJs(jsi::Runtime &rt, decltype(types.value) value) { return bridging::toJs(rt, value); } static jsi::String pathToJs(jsi::Runtime &rt, decltype(types.path) value) { return bridging::toJs(rt, value); } static jsi::String domainToJs(jsi::Runtime &rt, decltype(types.domain) value) { return bridging::toJs(rt, value); } static jsi::String versionToJs(jsi::Runtime &rt, decltype(types.version) value) { return bridging::toJs(rt, value); } static jsi::String expiresToJs(jsi::Runtime &rt, decltype(types.expires) value) { return bridging::toJs(rt, value); } static bool secureToJs(jsi::Runtime &rt, decltype(types.secure) value) { return bridging::toJs(rt, value); } static bool httpOnlyToJs(jsi::Runtime &rt, decltype(types.httpOnly) value) { return bridging::toJs(rt, value); } #endif static jsi::Object toJs( jsi::Runtime &rt, const T &value, const std::shared_ptr &jsInvoker) { auto result = facebook::jsi::Object(rt); result.setProperty(rt, "name", bridging::toJs(rt, value.name, jsInvoker)); result.setProperty(rt, "value", bridging::toJs(rt, value.value, jsInvoker)); if (value.path) { result.setProperty(rt, "path", bridging::toJs(rt, value.path.value(), jsInvoker)); } if (value.domain) { result.setProperty(rt, "domain", bridging::toJs(rt, value.domain.value(), jsInvoker)); } if (value.version) { result.setProperty(rt, "version", bridging::toJs(rt, value.version.value(), jsInvoker)); } if (value.expires) { result.setProperty(rt, "expires", bridging::toJs(rt, value.expires.value(), jsInvoker)); } if (value.secure) { result.setProperty(rt, "secure", bridging::toJs(rt, value.secure.value(), jsInvoker)); } if (value.httpOnly) { result.setProperty(rt, "httpOnly", bridging::toJs(rt, value.httpOnly.value(), jsInvoker)); } return result; } }; class JSI_EXPORT NativeCookieManagerCxxSpecJSI : public TurboModule { protected: NativeCookieManagerCxxSpecJSI(std::shared_ptr jsInvoker); public: virtual jsi::Value setCookie(jsi::Runtime &rt, jsi::String url, jsi::Object cookie, std::optional useWebKit) = 0; virtual jsi::Value setFromResponse(jsi::Runtime &rt, jsi::String url, jsi::String cookie) = 0; virtual jsi::Value getCookies(jsi::Runtime &rt, jsi::String url, std::optional useWebKit) = 0; virtual jsi::Value getFromResponse(jsi::Runtime &rt, jsi::String url) = 0; virtual jsi::Value clearAll(jsi::Runtime &rt, std::optional useWebKit) = 0; virtual jsi::Value flush(jsi::Runtime &rt) = 0; virtual jsi::Value removeSessionCookies(jsi::Runtime &rt) = 0; virtual jsi::Value getAll(jsi::Runtime &rt, std::optional useWebKit) = 0; virtual jsi::Value clearByName(jsi::Runtime &rt, jsi::String url, jsi::String name, std::optional useWebKit) = 0; }; template class JSI_EXPORT NativeCookieManagerCxxSpec : public TurboModule { public: jsi::Value create(jsi::Runtime &rt, const jsi::PropNameID &propName) override { return delegate_.create(rt, propName); } std::vector getPropertyNames(jsi::Runtime& runtime) override { return delegate_.getPropertyNames(runtime); } static constexpr std::string_view kModuleName = "CookieManager"; protected: NativeCookieManagerCxxSpec(std::shared_ptr jsInvoker) : TurboModule(std::string{NativeCookieManagerCxxSpec::kModuleName}, jsInvoker), delegate_(reinterpret_cast(this), jsInvoker) {} private: class Delegate : public NativeCookieManagerCxxSpecJSI { public: Delegate(T *instance, std::shared_ptr jsInvoker) : NativeCookieManagerCxxSpecJSI(std::move(jsInvoker)), instance_(instance) { } jsi::Value setCookie(jsi::Runtime &rt, jsi::String url, jsi::Object cookie, std::optional useWebKit) override { static_assert( bridging::getParameterCount(&T::setCookie) == 4, "Expected setCookie(...) to have 4 parameters"); return bridging::callFromJs( rt, &T::setCookie, jsInvoker_, instance_, std::move(url), std::move(cookie), std::move(useWebKit)); } jsi::Value setFromResponse(jsi::Runtime &rt, jsi::String url, jsi::String cookie) override { static_assert( bridging::getParameterCount(&T::setFromResponse) == 3, "Expected setFromResponse(...) to have 3 parameters"); return bridging::callFromJs( rt, &T::setFromResponse, jsInvoker_, instance_, std::move(url), std::move(cookie)); } jsi::Value getCookies(jsi::Runtime &rt, jsi::String url, std::optional useWebKit) override { static_assert( bridging::getParameterCount(&T::getCookies) == 3, "Expected getCookies(...) to have 3 parameters"); return bridging::callFromJs( rt, &T::getCookies, jsInvoker_, instance_, std::move(url), std::move(useWebKit)); } jsi::Value getFromResponse(jsi::Runtime &rt, jsi::String url) override { static_assert( bridging::getParameterCount(&T::getFromResponse) == 2, "Expected getFromResponse(...) to have 2 parameters"); return bridging::callFromJs( rt, &T::getFromResponse, jsInvoker_, instance_, std::move(url)); } jsi::Value clearAll(jsi::Runtime &rt, std::optional useWebKit) override { static_assert( bridging::getParameterCount(&T::clearAll) == 2, "Expected clearAll(...) to have 2 parameters"); return bridging::callFromJs( rt, &T::clearAll, jsInvoker_, instance_, std::move(useWebKit)); } jsi::Value flush(jsi::Runtime &rt) override { static_assert( bridging::getParameterCount(&T::flush) == 1, "Expected flush(...) to have 1 parameters"); return bridging::callFromJs( rt, &T::flush, jsInvoker_, instance_); } jsi::Value removeSessionCookies(jsi::Runtime &rt) override { static_assert( bridging::getParameterCount(&T::removeSessionCookies) == 1, "Expected removeSessionCookies(...) to have 1 parameters"); return bridging::callFromJs( rt, &T::removeSessionCookies, jsInvoker_, instance_); } jsi::Value getAll(jsi::Runtime &rt, std::optional useWebKit) override { static_assert( bridging::getParameterCount(&T::getAll) == 2, "Expected getAll(...) to have 2 parameters"); return bridging::callFromJs( rt, &T::getAll, jsInvoker_, instance_, std::move(useWebKit)); } jsi::Value clearByName(jsi::Runtime &rt, jsi::String url, jsi::String name, std::optional useWebKit) override { static_assert( bridging::getParameterCount(&T::clearByName) == 4, "Expected clearByName(...) to have 4 parameters"); return bridging::callFromJs( rt, &T::clearByName, jsInvoker_, instance_, std::move(url), std::move(name), std::move(useWebKit)); } private: friend class NativeCookieManagerCxxSpec; T *instance_; }; Delegate delegate_; }; } // namespace facebook::react