Lines Matching refs:env

41 PasteboardObserverInstance::PasteboardObserverInstance(const napi_env &env, const napi_ref &ref) : env_(env), ref_(ref)
70 auto env = pasteboardDataWorker->observer->GetEnv();
74 napi_open_handle_scope(env, &scope);
80 napi_get_undefined(env, &undefined);
84 napi_get_reference_value(env, ref, &callback);
85 napi_value result = NapiGetNull(env);
86 napi_call_function(env, undefined, callback, 0, &result, &resultOut);
88 napi_close_handle_scope(env, scope);
131 PasteboardDelayGetterInstance::PasteboardDelayGetterInstance(const napi_env &env, const napi_ref &ref)
132 : env_(env), ref_(ref)
155 auto env = pasteboardDelayWorker->delayGetter->GetEnv();
158 napi_open_handle_scope(env, &scope);
164 napi_get_undefined(env, &undefined);
165 napi_value argv[1] = { CreateNapiString(env, pasteboardDelayWorker->dataType) };
168 napi_get_reference_value(env, ref, &callback);
171 auto ret = napi_call_function(env, undefined, callback, 1, argv, &resultOut);
175 napi_unwrap(env, resultOut, reinterpret_cast<void **>(&unifiedDataNapi));
180 napi_close_handle_scope(env, scope);
245 bool SystemPasteboardNapi::CheckAgrsOfOnAndOff(napi_env env, bool checkArgsCount, napi_value *argv, size_t argc)
248 env, checkArgsCount, JSErrorCode::INVALID_PARAMETERS, "Parameter error. The number of arguments is wrong.") ||
249 !CheckArgsType(env, argv[0], napi_string, "Parameter error. The type of mimeType must be string.")) {
253 bool ret = GetValue(env, argv[0], mimeType);
258 if (!CheckExpression(env, mimeType == STRING_UPDATE, JSErrorCode::INVALID_PARAMETERS,
265 napi_value SystemPasteboardNapi::On(napi_env env, napi_callback_info info)
272 NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, &data));
274 if (!CheckAgrsOfOnAndOff(env, argc >= 2, argv, argc) ||
275 !CheckArgsType(env, argv[1], napi_function, "Parameter error. The type of callback must be function.")) {
280 napi_get_undefined(env, &result);
281 auto observer = GetObserver(env, argv[1]);
287 napi_create_reference(env, argv[1], 1, &ref);
288 observer = std::make_shared<PasteboardObserverInstance>(env, ref);
296 napi_value SystemPasteboardNapi::Off(napi_env env, napi_callback_info info)
303 NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, &data));
305 if (!CheckAgrsOfOnAndOff(env, argc >= 1, argv, argc)) {
312 if (!CheckArgsType(env, argv[1], napi_function, "Parameter error. The type of callback must be function.")) {
315 observer = GetObserver(env, argv[1]);
320 napi_get_undefined(env, &result);
325 napi_value SystemPasteboardNapi::Clear(napi_env env, napi_callback_info info)
329 auto input = [context](napi_env env, size_t argc, napi_value *argv, napi_value self) -> napi_status {
332 !CheckArgsType(env, argv[0], napi_function, "Parameter error. The type of callback must be function.")) {
343 AsyncCall asyncCall(env, info, context, 0);
344 return asyncCall.Call(env, exec);
347 napi_value SystemPasteboardNapi::ClearData(napi_env env, napi_callback_info info)
350 return Clear(env, info);
353 napi_value SystemPasteboardNapi::HasPasteData(napi_env env, napi_callback_info info)
357 auto input = [context](napi_env env, size_t argc, napi_value *argv, napi_value self) -> napi_status {
360 !CheckArgsType(env, argv[0], napi_function, "Parameter error. The type of callback must be function.")) {
365 auto output = [context](napi_env env, napi_value *result) -> napi_status {
366 napi_status status = napi_get_boolean(env, context->hasPasteData, result);
378 AsyncCall asyncCall(env, info, context, 0);
379 return asyncCall.Call(env, exec);
382 napi_value SystemPasteboardNapi::HasData(napi_env env, napi_callback_info info)
385 return HasPasteData(env, info);
390 auto input = [](napi_env env, size_t argc, napi_value *argv, napi_value self) -> napi_status {
393 !CheckArgsType(env, argv[0], napi_function, "Parameter error. The type of callback must be function.")) {
399 auto output = [context](napi_env env, napi_value *result) -> napi_status {
401 PasteDataNapi::NewInstance(env, instance);
403 napi_status ret = napi_unwrap(env, instance, reinterpret_cast<void **>(&obj));
415 napi_value SystemPasteboardNapi::GetPasteData(napi_env env, napi_callback_info info)
431 AsyncCall asyncCall(env, info, context, 0);
432 return asyncCall.Call(env, exec);
435 napi_value SystemPasteboardNapi::GetData(napi_env env, napi_callback_info info)
454 AsyncCall asyncCall(env, info, context, 0);
455 return asyncCall.Call(env, exec);
460 auto input = [context](napi_env env, size_t argc, napi_value *argv, napi_value self) -> napi_status {
463 env, argc > 0, JSErrorCode::INVALID_PARAMETERS,
465 !CheckExpression(env, PasteDataNapi::IsPasteData(env, argv[0]), JSErrorCode::INVALID_PARAMETERS,
470 !CheckArgsType(env, argv[1], napi_function, "Parameter error. The type of callback must be function.")) {
474 napi_unwrap(env, argv[0], reinterpret_cast<void **>(&pasteData));
483 napi_value SystemPasteboardNapi::SetPasteData(napi_env env, napi_callback_info info)
498 AsyncCall asyncCall(env, info, context, 1);
499 return asyncCall.Call(env, exec);
502 napi_value SystemPasteboardNapi::SetData(napi_env env, napi_callback_info info)
531 AsyncCall asyncCall(env, info, context, 1);
532 return asyncCall.Call(env, exec);
535 napi_value SystemPasteboardNapi::SetUnifiedData(napi_env env, napi_callback_info info)
562 AsyncCall asyncCall(env, info, context, 1);
563 return asyncCall.Call(env, exec);
566 napi_value SystemPasteboardNapi::GetUnifiedData(napi_env env, napi_callback_info info)
585 AsyncCall asyncCall(env, info, context, 0);
586 return asyncCall.Call(env, exec);
589 napi_value SystemPasteboardNapi::GetUnifiedDataSync(napi_env env, napi_callback_info info)
595 NAPI_CALL(env, UDMF::UnifiedDataNapi::NewInstance(env, unifiedData, instance));
597 napi_status status = napi_unwrap(env, instance, reinterpret_cast<void**>(&obj));
609 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "request timed out.")) {
615 napi_value SystemPasteboardNapi::SetUnifiedDataSync(napi_env env, napi_callback_info info)
622 NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, NULL));
624 env, argc > 0, JSErrorCode::INVALID_PARAMETERS, "Parameter error. Wrong number of arguments.")) {
628 napi_unwrap(env, argv[0], reinterpret_cast<void**>(&unifiedDataNapi));
629 if (!CheckExpression(env, (unifiedDataNapi != nullptr && unifiedDataNapi->value_ != nullptr),
633 auto properties = unifiedDataNapi->GetPropertiesNapi(env);
637 delayGetter = std::make_shared<PasteboardDelayGetterInstance>(env, properties->delayDataRef_);
652 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "request timed out.")) {
667 napi_value SystemPasteboardNapi::SetAppShareOptions(napi_env env, napi_callback_info info)
673 NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisArg, &data));
674 if (!CheckExpression(env, argc > 0, JSErrorCode::INVALID_PARAMETERS,
679 auto status = napi_get_value_int32(env, argv[0], &shareOptions);
680 if (!CheckExpression(env, status == napi_ok, JSErrorCode::INVALID_PARAMETERS,
684 if (!CheckExpression(env, shareOptions >= ShareOption::InApp && shareOptions <= ShareOption::CrossDevice,
689 if (!CheckExpression(env, result != static_cast<int32_t>(PasteboardError::PERMISSION_VERIFICATION_ERROR),
694 if (!CheckExpression(env, result != static_cast<int32_t>(PasteboardError::INVALID_OPERATION_ERROR),
701 napi_value SystemPasteboardNapi::RemoveAppShareOptions(napi_env env, napi_callback_info info)
704 if (CheckExpression(env, result != static_cast<int32_t>(PasteboardError::PERMISSION_VERIFICATION_ERROR),
714 auto input = [context](napi_env env, size_t argc, napi_value* argv, napi_value self) -> napi_status {
717 env, argc > 0, JSErrorCode::INVALID_PARAMETERS, "Parameter error. Wrong number of arguments.")) {
721 context->status = napi_unwrap(env, argv[0], reinterpret_cast<void**>(&unifiedDataNapi));
722 if (!CheckExpression(env, unifiedDataNapi != nullptr,
727 auto properties = unifiedDataNapi->GetPropertiesNapi(env);
729 context->delayGetter = std::make_shared<PasteboardDelayGetterInstance>(env, properties->delayDataRef_);
735 auto output = [context](napi_env env, napi_value *result) -> napi_status {
747 auto input = [](napi_env env, size_t argc, napi_value* argv, napi_value self) -> napi_status {
750 !CheckArgsType(env, argv[0], napi_function, "Parameter error. The type of callback must be function.")) {
756 auto output = [context](napi_env env, napi_value* result) -> napi_status {
759 UDMF::UnifiedDataNapi::NewInstance(env, unifiedData, instance);
762 napi_status ret = napi_unwrap(env, instance, reinterpret_cast<void**>(&obj));
774 napi_value SystemPasteboardNapi::IsRemoteData(napi_env env, napi_callback_info info)
786 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "Request timed out.")) {
791 napi_get_boolean(env, *value, &result);
795 napi_value SystemPasteboardNapi::GetDataSource(napi_env env, napi_callback_info info)
807 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "Request timed out.")) {
817 napi_create_string_utf8(env, bundleName.c_str(), NAPI_AUTO_LENGTH, &result);
821 napi_value SystemPasteboardNapi::HasDataType(napi_env env, napi_callback_info info)
828 NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, NULL));
829 if ((!CheckExpression(env, argc >= ARGC_TYPE_SET1, JSErrorCode::INVALID_PARAMETERS,
831 (!CheckArgsType(env, argv[0], napi_string, "Parameter error. The type of mimeType must be string."))) {
836 if (!GetValue(env, argv[0], mimeType)) {
849 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "Request timed out.")) {
855 napi_get_boolean(env, *value, &result);
859 napi_value SystemPasteboardNapi::DetectPatterns(napi_env env, napi_callback_info info)
862 auto input = [context](napi_env env, size_t argc, napi_value *argv, napi_value self) -> napi_status {
863 if (!CheckExpression(env, argc == ARGC_TYPE_SET1, JSErrorCode::INVALID_PARAMETERS,
867 bool getValueRes = GetValue(env, argv[0], context->patternsToCheck);
868 if (!CheckExpression(env, getValueRes, JSErrorCode::INVALID_PARAMETERS,
875 auto output = [context](napi_env env, napi_value *result) -> napi_status {
876 napi_status status = SetValue(env, context->patternsDetect, *result);
884 AsyncCall asyncCall(env, info, context, 1);
885 return asyncCall.Call(env, exec);
888 napi_value SystemPasteboardNapi::ClearDataSync(napi_env env, napi_callback_info info)
899 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "Request timed out.")) {
905 napi_value SystemPasteboardNapi::GetDataSync(napi_env env, napi_callback_info info)
909 NAPI_CALL(env, PasteDataNapi::NewInstance(env, instance));
911 napi_status status = napi_unwrap(env, instance, reinterpret_cast<void **>(&obj));
923 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "request timed out.")) {
929 napi_value SystemPasteboardNapi::SetDataSync(napi_env env, napi_callback_info info)
936 NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, NULL));
937 if (!CheckExpression(env, argc > 0, JSErrorCode::INVALID_PARAMETERS,
939 !CheckExpression(env, PasteDataNapi::IsPasteData(env, argv[0]), JSErrorCode::INVALID_PARAMETERS,
945 napi_unwrap(env, argv[0], reinterpret_cast<void **>(&pasteData));
959 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "request timed out.")) {
971 napi_value SystemPasteboardNapi::HasDataSync(napi_env env, napi_callback_info info)
982 if (!CheckExpression(env, value != nullptr, JSErrorCode::REQUEST_TIME_OUT, "request timed out.")) {
988 napi_get_boolean(env, *value, &result);
992 napi_value SystemPasteboardNapi::SystemPasteboardInit(napi_env env, napi_value exports)
1023 napi_define_class(env, "SystemPasteboard", NAPI_AUTO_LENGTH, New, nullptr,
1029 napi_create_reference(env, constructor, 1, &g_systemPasteboard);
1030 status = napi_set_named_property(env, exports, "SystemPasteboard", constructor);
1047 void SystemPasteboardNapi::Destructor(napi_env env, void *nativeObject, void *finalize_hint)
1054 napi_value SystemPasteboardNapi::New(napi_env env, napi_callback_info info)
1059 napi_get_cb_info(env, info, &argc, argv, &thisVar, nullptr);
1067 obj->env_ = env;
1068 NAPI_CALL(env, napi_wrap(env, thisVar, obj, SystemPasteboardNapi::Destructor,
1075 napi_status SystemPasteboardNapi::NewInstance(napi_env env, napi_value &instance)
1079 status = napi_get_reference_value(env, g_systemPasteboard_instance, &instance);
1088 status = napi_get_reference_value(env, g_systemPasteboard, &constructor);
1094 status = napi_new_instance(env, constructor, 0, nullptr, &instance);
1099 napi_create_reference(env, instance, 1, &g_systemPasteboard_instance);
1105 std::shared_ptr<PasteboardObserverInstance> SystemPasteboardNapi::GetObserver(napi_env env, napi_value observer)
1110 napi_get_reference_value(env, refKey, &callback);
1112 napi_strict_equals(env, observer, callback, &isEqual);