From df432d11c38c367c7d48b7cf58d98e46f4f953cc Mon Sep 17 00:00:00 2001 From: appflowy Date: Sun, 12 Dec 2021 21:48:52 +0800 Subject: [PATCH] add flowy-net crate --- backend/Cargo.lock | 10 + .../flowy_sdk/lib/dispatch/dispatch.dart | 2 +- .../network_state.pb.dart | 0 .../network_state.pbenum.dart | 0 .../network_state.pbjson.dart | 0 .../network_state.pbserver.dart | 0 .../lib/protobuf/flowy-net/protobuf.dart | 2 + .../lib/protobuf/lib-infra/kv.pb.dart | 167 ------ .../lib/protobuf/lib-infra/kv.pbenum.dart | 7 - .../lib/protobuf/lib-infra/kv.pbjson.dart | 30 -- .../lib/protobuf/lib-infra/kv.pbserver.dart | 9 - .../lib/protobuf/lib-infra/protobuf.dart | 2 - frontend/rust-lib/Cargo.toml | 1 + frontend/rust-lib/flowy-core/Cargo.toml | 1 + .../flowy-core/src/core/core_context.rs | 2 +- frontend/rust-lib/flowy-net/Cargo.toml | 10 + frontend/rust-lib/flowy-net/Flowy.toml | 2 + .../rust-lib/flowy-net/src/entities/mod.rs | 2 + .../src/entities/network_state.rs | 0 frontend/rust-lib/flowy-net/src/lib.rs | 2 + .../src/protobuf/mod.rs | 0 .../src/protobuf/model/mod.rs | 3 - .../src/protobuf/model/network_state.rs | 30 +- .../src/protobuf/proto/network_state.proto | 1 - frontend/rust-lib/flowy-user/Cargo.toml | 1 + .../flowy-user/src/handlers/user_handler.rs | 2 +- .../flowy-user/src/services/user/notifier.rs | 2 +- .../src/services/user/user_session.rs | 2 +- .../src/services/user/ws_manager.rs | 3 +- frontend/rust-lib/lib-infra/Flowy.toml | 2 - .../rust-lib/lib-infra/src/entities/mod.rs | 1 - frontend/rust-lib/lib-infra/src/lib.rs | 2 - .../lib-infra/src/protobuf/model/kv.rs | 478 ------------------ .../lib-infra/src/protobuf/proto/kv.proto | 9 - frontend/scripts/flowy-tool/src/util/file.rs | 2 +- .../src/derive_cache/derive_cache.rs | 9 +- 36 files changed, 58 insertions(+), 738 deletions(-) rename frontend/app_flowy/packages/flowy_sdk/lib/protobuf/{lib-infra => flowy-net}/network_state.pb.dart (100%) rename frontend/app_flowy/packages/flowy_sdk/lib/protobuf/{lib-infra => flowy-net}/network_state.pbenum.dart (100%) rename frontend/app_flowy/packages/flowy_sdk/lib/protobuf/{lib-infra => flowy-net}/network_state.pbjson.dart (100%) rename frontend/app_flowy/packages/flowy_sdk/lib/protobuf/{lib-infra => flowy-net}/network_state.pbserver.dart (100%) create mode 100644 frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/protobuf.dart delete mode 100644 frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pb.dart delete mode 100644 frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbenum.dart delete mode 100644 frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbjson.dart delete mode 100644 frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbserver.dart create mode 100644 frontend/rust-lib/flowy-net/Cargo.toml create mode 100644 frontend/rust-lib/flowy-net/Flowy.toml create mode 100644 frontend/rust-lib/flowy-net/src/entities/mod.rs rename frontend/rust-lib/{lib-infra => flowy-net}/src/entities/network_state.rs (100%) create mode 100644 frontend/rust-lib/flowy-net/src/lib.rs rename frontend/rust-lib/{lib-infra => flowy-net}/src/protobuf/mod.rs (100%) rename frontend/rust-lib/{lib-infra => flowy-net}/src/protobuf/model/mod.rs (82%) rename frontend/rust-lib/{lib-infra => flowy-net}/src/protobuf/model/network_state.rs (89%) rename frontend/rust-lib/{lib-infra => flowy-net}/src/protobuf/proto/network_state.proto (99%) delete mode 100644 frontend/rust-lib/lib-infra/Flowy.toml delete mode 100644 frontend/rust-lib/lib-infra/src/entities/mod.rs delete mode 100644 frontend/rust-lib/lib-infra/src/protobuf/model/kv.rs delete mode 100644 frontend/rust-lib/lib-infra/src/protobuf/proto/kv.proto diff --git a/backend/Cargo.lock b/backend/Cargo.lock index 3062c72aa4..d800cbc4c5 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -1237,6 +1237,7 @@ dependencies = [ "flowy-database", "flowy-derive", "flowy-document", + "flowy-net", "futures", "futures-core", "lazy_static", @@ -1334,6 +1335,14 @@ dependencies = [ "url", ] +[[package]] +name = "flowy-net" +version = "0.1.0" +dependencies = [ + "flowy-derive", + "protobuf", +] + [[package]] name = "flowy-sdk" version = "0.1.0" @@ -1396,6 +1405,7 @@ dependencies = [ "flowy-collaboration", "flowy-database", "flowy-derive", + "flowy-net", "flowy-user-infra", "futures-core", "lazy_static", diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/dispatch/dispatch.dart b/frontend/app_flowy/packages/flowy_sdk/lib/dispatch/dispatch.dart index 328d6a6af4..cdfdad7631 100644 --- a/frontend/app_flowy/packages/flowy_sdk/lib/dispatch/dispatch.dart +++ b/frontend/app_flowy/packages/flowy_sdk/lib/dispatch/dispatch.dart @@ -3,11 +3,11 @@ import 'package:dartz/dartz.dart'; import 'package:flowy_log/flowy_log.dart'; // ignore: unnecessary_import import 'package:flowy_sdk/protobuf/dart-ffi/ffi_response.pb.dart'; +import 'package:flowy_sdk/protobuf/flowy-net/network_state.pb.dart'; import 'package:flowy_sdk/protobuf/flowy-user/errors.pb.dart'; import 'package:flowy_sdk/protobuf/flowy-user/event.pb.dart'; import 'package:flowy_sdk/protobuf/flowy-core/errors.pb.dart'; import 'package:flowy_sdk/protobuf/flowy-core/event.pb.dart'; -import 'package:flowy_sdk/protobuf/lib-infra/network_state.pb.dart'; import 'package:isolates/isolates.dart'; import 'package:isolates/ports.dart'; import 'package:ffi/ffi.dart'; diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pb.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pb.dart similarity index 100% rename from frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pb.dart rename to frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pb.dart diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pbenum.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pbenum.dart similarity index 100% rename from frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pbenum.dart rename to frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pbenum.dart diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pbjson.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pbjson.dart similarity index 100% rename from frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pbjson.dart rename to frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pbjson.dart diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pbserver.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pbserver.dart similarity index 100% rename from frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/network_state.pbserver.dart rename to frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/network_state.pbserver.dart diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/protobuf.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/protobuf.dart new file mode 100644 index 0000000000..53a97620cf --- /dev/null +++ b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/flowy-net/protobuf.dart @@ -0,0 +1,2 @@ +// Auto-generated, do not edit +export './network_state.pb.dart'; diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pb.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pb.dart deleted file mode 100644 index 971c06cd0a..0000000000 --- a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pb.dart +++ /dev/null @@ -1,167 +0,0 @@ -/// -// Generated code. Do not modify. -// source: kv.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,unnecessary_const,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type,unnecessary_this,prefer_final_fields - -import 'dart:core' as $core; - -import 'package:fixnum/fixnum.dart' as $fixnum; -import 'package:protobuf/protobuf.dart' as $pb; - -enum KeyValue_OneOfStrValue { - strValue, - notSet -} - -enum KeyValue_OneOfIntValue { - intValue, - notSet -} - -enum KeyValue_OneOfFloatValue { - floatValue, - notSet -} - -enum KeyValue_OneOfBoolValue { - boolValue, - notSet -} - -class KeyValue extends $pb.GeneratedMessage { - static const $core.Map<$core.int, KeyValue_OneOfStrValue> _KeyValue_OneOfStrValueByTag = { - 2 : KeyValue_OneOfStrValue.strValue, - 0 : KeyValue_OneOfStrValue.notSet - }; - static const $core.Map<$core.int, KeyValue_OneOfIntValue> _KeyValue_OneOfIntValueByTag = { - 3 : KeyValue_OneOfIntValue.intValue, - 0 : KeyValue_OneOfIntValue.notSet - }; - static const $core.Map<$core.int, KeyValue_OneOfFloatValue> _KeyValue_OneOfFloatValueByTag = { - 4 : KeyValue_OneOfFloatValue.floatValue, - 0 : KeyValue_OneOfFloatValue.notSet - }; - static const $core.Map<$core.int, KeyValue_OneOfBoolValue> _KeyValue_OneOfBoolValueByTag = { - 5 : KeyValue_OneOfBoolValue.boolValue, - 0 : KeyValue_OneOfBoolValue.notSet - }; - static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'KeyValue', createEmptyInstance: create) - ..oo(0, [2]) - ..oo(1, [3]) - ..oo(2, [4]) - ..oo(3, [5]) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'key') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'strValue') - ..aInt64(3, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'intValue') - ..a<$core.double>(4, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'floatValue', $pb.PbFieldType.OD) - ..aOB(5, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'boolValue') - ..hasRequiredFields = false - ; - - KeyValue._() : super(); - factory KeyValue({ - $core.String? key, - $core.String? strValue, - $fixnum.Int64? intValue, - $core.double? floatValue, - $core.bool? boolValue, - }) { - final _result = create(); - if (key != null) { - _result.key = key; - } - if (strValue != null) { - _result.strValue = strValue; - } - if (intValue != null) { - _result.intValue = intValue; - } - if (floatValue != null) { - _result.floatValue = floatValue; - } - if (boolValue != null) { - _result.boolValue = boolValue; - } - return _result; - } - factory KeyValue.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory KeyValue.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - KeyValue clone() => KeyValue()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - KeyValue copyWith(void Function(KeyValue) updates) => super.copyWith((message) => updates(message as KeyValue)) as KeyValue; // ignore: deprecated_member_use - $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') - static KeyValue create() => KeyValue._(); - KeyValue createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static KeyValue getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static KeyValue? _defaultInstance; - - KeyValue_OneOfStrValue whichOneOfStrValue() => _KeyValue_OneOfStrValueByTag[$_whichOneof(0)]!; - void clearOneOfStrValue() => clearField($_whichOneof(0)); - - KeyValue_OneOfIntValue whichOneOfIntValue() => _KeyValue_OneOfIntValueByTag[$_whichOneof(1)]!; - void clearOneOfIntValue() => clearField($_whichOneof(1)); - - KeyValue_OneOfFloatValue whichOneOfFloatValue() => _KeyValue_OneOfFloatValueByTag[$_whichOneof(2)]!; - void clearOneOfFloatValue() => clearField($_whichOneof(2)); - - KeyValue_OneOfBoolValue whichOneOfBoolValue() => _KeyValue_OneOfBoolValueByTag[$_whichOneof(3)]!; - void clearOneOfBoolValue() => clearField($_whichOneof(3)); - - @$pb.TagNumber(1) - $core.String get key => $_getSZ(0); - @$pb.TagNumber(1) - set key($core.String v) { $_setString(0, v); } - @$pb.TagNumber(1) - $core.bool hasKey() => $_has(0); - @$pb.TagNumber(1) - void clearKey() => clearField(1); - - @$pb.TagNumber(2) - $core.String get strValue => $_getSZ(1); - @$pb.TagNumber(2) - set strValue($core.String v) { $_setString(1, v); } - @$pb.TagNumber(2) - $core.bool hasStrValue() => $_has(1); - @$pb.TagNumber(2) - void clearStrValue() => clearField(2); - - @$pb.TagNumber(3) - $fixnum.Int64 get intValue => $_getI64(2); - @$pb.TagNumber(3) - set intValue($fixnum.Int64 v) { $_setInt64(2, v); } - @$pb.TagNumber(3) - $core.bool hasIntValue() => $_has(2); - @$pb.TagNumber(3) - void clearIntValue() => clearField(3); - - @$pb.TagNumber(4) - $core.double get floatValue => $_getN(3); - @$pb.TagNumber(4) - set floatValue($core.double v) { $_setDouble(3, v); } - @$pb.TagNumber(4) - $core.bool hasFloatValue() => $_has(3); - @$pb.TagNumber(4) - void clearFloatValue() => clearField(4); - - @$pb.TagNumber(5) - $core.bool get boolValue => $_getBF(4); - @$pb.TagNumber(5) - set boolValue($core.bool v) { $_setBool(4, v); } - @$pb.TagNumber(5) - $core.bool hasBoolValue() => $_has(4); - @$pb.TagNumber(5) - void clearBoolValue() => clearField(5); -} - diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbenum.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbenum.dart deleted file mode 100644 index 79c2244e07..0000000000 --- a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbenum.dart +++ /dev/null @@ -1,7 +0,0 @@ -/// -// Generated code. Do not modify. -// source: kv.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,unnecessary_const,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type,unnecessary_this,prefer_final_fields - diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbjson.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbjson.dart deleted file mode 100644 index 45152125bb..0000000000 --- a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbjson.dart +++ /dev/null @@ -1,30 +0,0 @@ -/// -// Generated code. Do not modify. -// source: kv.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,unnecessary_const,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type,unnecessary_this,prefer_final_fields,deprecated_member_use_from_same_package - -import 'dart:core' as $core; -import 'dart:convert' as $convert; -import 'dart:typed_data' as $typed_data; -@$core.Deprecated('Use keyValueDescriptor instead') -const KeyValue$json = const { - '1': 'KeyValue', - '2': const [ - const {'1': 'key', '3': 1, '4': 1, '5': 9, '10': 'key'}, - const {'1': 'str_value', '3': 2, '4': 1, '5': 9, '9': 0, '10': 'strValue'}, - const {'1': 'int_value', '3': 3, '4': 1, '5': 3, '9': 1, '10': 'intValue'}, - const {'1': 'float_value', '3': 4, '4': 1, '5': 1, '9': 2, '10': 'floatValue'}, - const {'1': 'bool_value', '3': 5, '4': 1, '5': 8, '9': 3, '10': 'boolValue'}, - ], - '8': const [ - const {'1': 'one_of_str_value'}, - const {'1': 'one_of_int_value'}, - const {'1': 'one_of_float_value'}, - const {'1': 'one_of_bool_value'}, - ], -}; - -/// Descriptor for `KeyValue`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List keyValueDescriptor = $convert.base64Decode('CghLZXlWYWx1ZRIQCgNrZXkYASABKAlSA2tleRIdCglzdHJfdmFsdWUYAiABKAlIAFIIc3RyVmFsdWUSHQoJaW50X3ZhbHVlGAMgASgDSAFSCGludFZhbHVlEiEKC2Zsb2F0X3ZhbHVlGAQgASgBSAJSCmZsb2F0VmFsdWUSHwoKYm9vbF92YWx1ZRgFIAEoCEgDUglib29sVmFsdWVCEgoQb25lX29mX3N0cl92YWx1ZUISChBvbmVfb2ZfaW50X3ZhbHVlQhQKEm9uZV9vZl9mbG9hdF92YWx1ZUITChFvbmVfb2ZfYm9vbF92YWx1ZQ=='); diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbserver.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbserver.dart deleted file mode 100644 index 0daeedf5a6..0000000000 --- a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/kv.pbserver.dart +++ /dev/null @@ -1,9 +0,0 @@ -/// -// Generated code. Do not modify. -// source: kv.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,unnecessary_const,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type,unnecessary_this,prefer_final_fields,deprecated_member_use_from_same_package - -export 'kv.pb.dart'; - diff --git a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/protobuf.dart b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/protobuf.dart index 2cc2dfd9ee..58506e3e5f 100644 --- a/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/protobuf.dart +++ b/frontend/app_flowy/packages/flowy_sdk/lib/protobuf/lib-infra/protobuf.dart @@ -1,3 +1 @@ // Auto-generated, do not edit -export './kv.pb.dart'; -export './network_state.pb.dart'; diff --git a/frontend/rust-lib/Cargo.toml b/frontend/rust-lib/Cargo.toml index 592c6e1d6c..2800206223 100644 --- a/frontend/rust-lib/Cargo.toml +++ b/frontend/rust-lib/Cargo.toml @@ -3,6 +3,7 @@ members = [ "lib-dispatch", "lib-log", "lib-infra", + "flowy-net", "flowy-sdk", "dart-ffi", "flowy-user", diff --git a/frontend/rust-lib/flowy-core/Cargo.toml b/frontend/rust-lib/flowy-core/Cargo.toml index e460874384..33a4e280a0 100644 --- a/frontend/rust-lib/flowy-core/Cargo.toml +++ b/frontend/rust-lib/flowy-core/Cargo.toml @@ -16,6 +16,7 @@ backend-service = { path = "../../../shared-lib/backend-service" } flowy-document = { path = "../flowy-document" } flowy-database = { path = "../flowy-database" } +flowy-net = { path = "../flowy-net" } dart-notify = { path = "../dart-notify" } lib-dispatch = { path = "../lib-dispatch" } lib-infra = { path = "../lib-infra" } diff --git a/frontend/rust-lib/flowy-core/src/core/core_context.rs b/frontend/rust-lib/flowy-core/src/core/core_context.rs index 983aaed33d..7f5236b011 100644 --- a/frontend/rust-lib/flowy-core/src/core/core_context.rs +++ b/frontend/rust-lib/flowy-core/src/core/core_context.rs @@ -8,8 +8,8 @@ use crate::{ use chrono::Utc; use flowy_collaboration::{entities::doc::DocDelta, user_default::initial_read_me}; use flowy_core_infra::user_default; +use flowy_net::entities::NetworkType; use lazy_static::lazy_static; -use lib_infra::entities::network_state::NetworkType; use parking_lot::RwLock; use std::{collections::HashMap, sync::Arc}; lazy_static! { diff --git a/frontend/rust-lib/flowy-net/Cargo.toml b/frontend/rust-lib/flowy-net/Cargo.toml new file mode 100644 index 0000000000..f86272efd5 --- /dev/null +++ b/frontend/rust-lib/flowy-net/Cargo.toml @@ -0,0 +1,10 @@ +[package] +name = "flowy-net" +version = "0.1.0" +edition = "2018" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +flowy-derive = { path = "../../../shared-lib/flowy-derive" } +protobuf = {version = "2.18.0"} \ No newline at end of file diff --git a/frontend/rust-lib/flowy-net/Flowy.toml b/frontend/rust-lib/flowy-net/Flowy.toml new file mode 100644 index 0000000000..9744b45163 --- /dev/null +++ b/frontend/rust-lib/flowy-net/Flowy.toml @@ -0,0 +1,2 @@ +proto_crates = ["src/entities"] +event_files = [] \ No newline at end of file diff --git a/frontend/rust-lib/flowy-net/src/entities/mod.rs b/frontend/rust-lib/flowy-net/src/entities/mod.rs new file mode 100644 index 0000000000..10dad6191c --- /dev/null +++ b/frontend/rust-lib/flowy-net/src/entities/mod.rs @@ -0,0 +1,2 @@ +mod network_state; +pub use network_state::*; diff --git a/frontend/rust-lib/lib-infra/src/entities/network_state.rs b/frontend/rust-lib/flowy-net/src/entities/network_state.rs similarity index 100% rename from frontend/rust-lib/lib-infra/src/entities/network_state.rs rename to frontend/rust-lib/flowy-net/src/entities/network_state.rs diff --git a/frontend/rust-lib/flowy-net/src/lib.rs b/frontend/rust-lib/flowy-net/src/lib.rs new file mode 100644 index 0000000000..85976edd74 --- /dev/null +++ b/frontend/rust-lib/flowy-net/src/lib.rs @@ -0,0 +1,2 @@ +pub mod entities; +pub mod protobuf; diff --git a/frontend/rust-lib/lib-infra/src/protobuf/mod.rs b/frontend/rust-lib/flowy-net/src/protobuf/mod.rs similarity index 100% rename from frontend/rust-lib/lib-infra/src/protobuf/mod.rs rename to frontend/rust-lib/flowy-net/src/protobuf/mod.rs diff --git a/frontend/rust-lib/lib-infra/src/protobuf/model/mod.rs b/frontend/rust-lib/flowy-net/src/protobuf/model/mod.rs similarity index 82% rename from frontend/rust-lib/lib-infra/src/protobuf/model/mod.rs rename to frontend/rust-lib/flowy-net/src/protobuf/model/mod.rs index 535c9c70f6..0873fb624e 100644 --- a/frontend/rust-lib/lib-infra/src/protobuf/model/mod.rs +++ b/frontend/rust-lib/flowy-net/src/protobuf/model/mod.rs @@ -1,8 +1,5 @@ #![cfg_attr(rustfmt, rustfmt::skip)] // Auto-generated, do not edit -mod kv; -pub use kv::*; - mod network_state; pub use network_state::*; diff --git a/frontend/rust-lib/lib-infra/src/protobuf/model/network_state.rs b/frontend/rust-lib/flowy-net/src/protobuf/model/network_state.rs similarity index 89% rename from frontend/rust-lib/lib-infra/src/protobuf/model/network_state.rs rename to frontend/rust-lib/flowy-net/src/protobuf/model/network_state.rs index b74f295a86..82286beead 100644 --- a/frontend/rust-lib/lib-infra/src/protobuf/model/network_state.rs +++ b/frontend/rust-lib/flowy-net/src/protobuf/model/network_state.rs @@ -231,21 +231,21 @@ static file_descriptor_proto_data: &'static [u8] = b"\ \n\x13network_state.proto\",\n\x0cNetworkState\x12\x1c\n\x02ty\x18\x01\ \x20\x01(\x0e2\x0c.NetworkTypeR\x02ty*G\n\x0bNetworkType\x12\x16\n\x12Un\ knownNetworkType\x10\0\x12\x08\n\x04Wifi\x10\x01\x12\x08\n\x04Cell\x10\ - \x02\x12\x0c\n\x08Ethernet\x10\x03J\x9d\x02\n\x06\x12\x04\0\0\n\x01\n\ - \x08\n\x01\x0c\x12\x03\0\0\x12\n\n\n\x02\x04\0\x12\x04\x02\0\x04\x01\n\n\ - \n\x03\x04\0\x01\x12\x03\x02\x08\x14\n\x0b\n\x04\x04\0\x02\0\x12\x03\x03\ - \x04\x17\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03\x03\x04\x0f\n\x0c\n\x05\x04\ - \0\x02\0\x01\x12\x03\x03\x10\x12\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\x03\ - \x15\x16\n\n\n\x02\x05\0\x12\x04\x05\0\n\x01\n\n\n\x03\x05\0\x01\x12\x03\ - \x05\x05\x10\n\x0b\n\x04\x05\0\x02\0\x12\x03\x06\x04\x1b\n\x0c\n\x05\x05\ - \0\x02\0\x01\x12\x03\x06\x04\x16\n\x0c\n\x05\x05\0\x02\0\x02\x12\x03\x06\ - \x19\x1a\n\x0b\n\x04\x05\0\x02\x01\x12\x03\x07\x04\r\n\x0c\n\x05\x05\0\ - \x02\x01\x01\x12\x03\x07\x04\x08\n\x0c\n\x05\x05\0\x02\x01\x02\x12\x03\ - \x07\x0b\x0c\n\x0b\n\x04\x05\0\x02\x02\x12\x03\x08\x04\r\n\x0c\n\x05\x05\ - \0\x02\x02\x01\x12\x03\x08\x04\x08\n\x0c\n\x05\x05\0\x02\x02\x02\x12\x03\ - \x08\x0b\x0c\n\x0b\n\x04\x05\0\x02\x03\x12\x03\t\x04\x11\n\x0c\n\x05\x05\ - \0\x02\x03\x01\x12\x03\t\x04\x0c\n\x0c\n\x05\x05\0\x02\x03\x02\x12\x03\t\ - \x0f\x10b\x06proto3\ + \x02\x12\x0c\n\x08Ethernet\x10\x03J\x9d\x02\n\x06\x12\x04\0\0\t\x01\n\ + \x08\n\x01\x0c\x12\x03\0\0\x12\n\n\n\x02\x04\0\x12\x04\x01\0\x03\x01\n\n\ + \n\x03\x04\0\x01\x12\x03\x01\x08\x14\n\x0b\n\x04\x04\0\x02\0\x12\x03\x02\ + \x04\x17\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03\x02\x04\x0f\n\x0c\n\x05\x04\ + \0\x02\0\x01\x12\x03\x02\x10\x12\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\x02\ + \x15\x16\n\n\n\x02\x05\0\x12\x04\x04\0\t\x01\n\n\n\x03\x05\0\x01\x12\x03\ + \x04\x05\x10\n\x0b\n\x04\x05\0\x02\0\x12\x03\x05\x04\x1b\n\x0c\n\x05\x05\ + \0\x02\0\x01\x12\x03\x05\x04\x16\n\x0c\n\x05\x05\0\x02\0\x02\x12\x03\x05\ + \x19\x1a\n\x0b\n\x04\x05\0\x02\x01\x12\x03\x06\x04\r\n\x0c\n\x05\x05\0\ + \x02\x01\x01\x12\x03\x06\x04\x08\n\x0c\n\x05\x05\0\x02\x01\x02\x12\x03\ + \x06\x0b\x0c\n\x0b\n\x04\x05\0\x02\x02\x12\x03\x07\x04\r\n\x0c\n\x05\x05\ + \0\x02\x02\x01\x12\x03\x07\x04\x08\n\x0c\n\x05\x05\0\x02\x02\x02\x12\x03\ + \x07\x0b\x0c\n\x0b\n\x04\x05\0\x02\x03\x12\x03\x08\x04\x11\n\x0c\n\x05\ + \x05\0\x02\x03\x01\x12\x03\x08\x04\x0c\n\x0c\n\x05\x05\0\x02\x03\x02\x12\ + \x03\x08\x0f\x10b\x06proto3\ "; static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; diff --git a/frontend/rust-lib/lib-infra/src/protobuf/proto/network_state.proto b/frontend/rust-lib/flowy-net/src/protobuf/proto/network_state.proto similarity index 99% rename from frontend/rust-lib/lib-infra/src/protobuf/proto/network_state.proto rename to frontend/rust-lib/flowy-net/src/protobuf/proto/network_state.proto index 06a4aa5f3c..390def7011 100644 --- a/frontend/rust-lib/lib-infra/src/protobuf/proto/network_state.proto +++ b/frontend/rust-lib/flowy-net/src/protobuf/proto/network_state.proto @@ -1,5 +1,4 @@ syntax = "proto3"; - message NetworkState { NetworkType ty = 1; } diff --git a/frontend/rust-lib/flowy-user/Cargo.toml b/frontend/rust-lib/flowy-user/Cargo.toml index ed99e4fb72..5c2b70f1a7 100644 --- a/frontend/rust-lib/flowy-user/Cargo.toml +++ b/frontend/rust-lib/flowy-user/Cargo.toml @@ -15,6 +15,7 @@ lib-sqlite = { path = "../../../shared-lib/lib-sqlite" } derive_more = {version = "0.99", features = ["display"]} flowy-database = { path = "../flowy-database" } +flowy-net = { path = "../flowy-net" } dart-notify = { path = "../dart-notify" } lib-dispatch = { path = "../lib-dispatch" } lib-infra = { path = "../lib-infra" } diff --git a/frontend/rust-lib/flowy-user/src/handlers/user_handler.rs b/frontend/rust-lib/flowy-user/src/handlers/user_handler.rs index c82fe44d1b..531b79b696 100644 --- a/frontend/rust-lib/flowy-user/src/handlers/user_handler.rs +++ b/frontend/rust-lib/flowy-user/src/handlers/user_handler.rs @@ -1,6 +1,6 @@ use crate::{entities::*, errors::UserError, services::user::UserSession}; +use flowy_net::entities::NetworkState; use lib_dispatch::prelude::*; -use lib_infra::entities::network_state::NetworkState; use std::{convert::TryInto, sync::Arc}; #[tracing::instrument(skip(session))] diff --git a/frontend/rust-lib/flowy-user/src/services/user/notifier.rs b/frontend/rust-lib/flowy-user/src/services/user/notifier.rs index 1b181165c9..c25f2d3dbe 100644 --- a/frontend/rust-lib/flowy-user/src/services/user/notifier.rs +++ b/frontend/rust-lib/flowy-user/src/services/user/notifier.rs @@ -1,5 +1,5 @@ use crate::entities::{UserProfile, UserStatus}; -use lib_infra::entities::network_state::NetworkType; +use flowy_net::entities::NetworkType; use tokio::sync::{broadcast, mpsc}; pub struct UserNotifier { diff --git a/frontend/rust-lib/flowy-user/src/services/user/user_session.rs b/frontend/rust-lib/flowy-user/src/services/user/user_session.rs index e0c99b65e6..dd49e239b9 100644 --- a/frontend/rust-lib/flowy-user/src/services/user/user_session.rs +++ b/frontend/rust-lib/flowy-user/src/services/user/user_session.rs @@ -14,7 +14,6 @@ use flowy_database::{ UserDatabaseConnection, }; use flowy_user_infra::entities::{SignInResponse, SignUpResponse}; -use lib_infra::entities::network_state::NetworkState; use lib_sqlite::ConnectionPool; use lib_ws::{WsConnectState, WsMessageHandler}; @@ -32,6 +31,7 @@ use crate::{ }, sql_tables::{UserTable, UserTableChangeset}, }; +use flowy_net::entities::NetworkState; pub struct UserSessionConfig { root_dir: String, diff --git a/frontend/rust-lib/flowy-user/src/services/user/ws_manager.rs b/frontend/rust-lib/flowy-user/src/services/user/ws_manager.rs index 412843e9d0..c73cd94ee9 100644 --- a/frontend/rust-lib/flowy-user/src/services/user/ws_manager.rs +++ b/frontend/rust-lib/flowy-user/src/services/user/ws_manager.rs @@ -1,6 +1,7 @@ use crate::errors::UserError; -use lib_infra::{entities::network_state::NetworkType, future::ResultFuture}; +use flowy_net::entities::NetworkType; +use lib_infra::future::ResultFuture; use lib_ws::{WsConnectState, WsController, WsMessage, WsMessageHandler, WsSender}; use parking_lot::RwLock; use std::sync::Arc; diff --git a/frontend/rust-lib/lib-infra/Flowy.toml b/frontend/rust-lib/lib-infra/Flowy.toml deleted file mode 100644 index f018887748..0000000000 --- a/frontend/rust-lib/lib-infra/Flowy.toml +++ /dev/null @@ -1,2 +0,0 @@ -proto_crates = ["src/kv", "src/entities"] -event_files = [] \ No newline at end of file diff --git a/frontend/rust-lib/lib-infra/src/entities/mod.rs b/frontend/rust-lib/lib-infra/src/entities/mod.rs deleted file mode 100644 index 52d57f3d0b..0000000000 --- a/frontend/rust-lib/lib-infra/src/entities/mod.rs +++ /dev/null @@ -1 +0,0 @@ -pub mod network_state; diff --git a/frontend/rust-lib/lib-infra/src/lib.rs b/frontend/rust-lib/lib-infra/src/lib.rs index 681f4aa7f2..4e67d61c44 100644 --- a/frontend/rust-lib/lib-infra/src/lib.rs +++ b/frontend/rust-lib/lib-infra/src/lib.rs @@ -1,6 +1,4 @@ -pub mod entities; pub mod future; -mod protobuf; pub mod retry; #[allow(dead_code)] diff --git a/frontend/rust-lib/lib-infra/src/protobuf/model/kv.rs b/frontend/rust-lib/lib-infra/src/protobuf/model/kv.rs deleted file mode 100644 index a28d4c9373..0000000000 --- a/frontend/rust-lib/lib-infra/src/protobuf/model/kv.rs +++ /dev/null @@ -1,478 +0,0 @@ -// This file is generated by rust-protobuf 2.22.1. Do not edit -// @generated - -// https://github.com/rust-lang/rust-clippy/issues/702 -#![allow(unknown_lints)] -#![allow(clippy::all)] - -#![allow(unused_attributes)] -#![cfg_attr(rustfmt, rustfmt::skip)] - -#![allow(box_pointers)] -#![allow(dead_code)] -#![allow(missing_docs)] -#![allow(non_camel_case_types)] -#![allow(non_snake_case)] -#![allow(non_upper_case_globals)] -#![allow(trivial_casts)] -#![allow(unused_imports)] -#![allow(unused_results)] -//! Generated file from `kv.proto` - -/// Generated files are compatible only with the same version -/// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_22_1; - -#[derive(PartialEq,Clone,Default)] -pub struct KeyValue { - // message fields - pub key: ::std::string::String, - // message oneof groups - pub one_of_str_value: ::std::option::Option, - pub one_of_int_value: ::std::option::Option, - pub one_of_float_value: ::std::option::Option, - pub one_of_bool_value: ::std::option::Option, - // special fields - pub unknown_fields: ::protobuf::UnknownFields, - pub cached_size: ::protobuf::CachedSize, -} - -impl<'a> ::std::default::Default for &'a KeyValue { - fn default() -> &'a KeyValue { - ::default_instance() - } -} - -#[derive(Clone,PartialEq,Debug)] -pub enum KeyValue_oneof_one_of_str_value { - str_value(::std::string::String), -} - -#[derive(Clone,PartialEq,Debug)] -pub enum KeyValue_oneof_one_of_int_value { - int_value(i64), -} - -#[derive(Clone,PartialEq,Debug)] -pub enum KeyValue_oneof_one_of_float_value { - float_value(f64), -} - -#[derive(Clone,PartialEq,Debug)] -pub enum KeyValue_oneof_one_of_bool_value { - bool_value(bool), -} - -impl KeyValue { - pub fn new() -> KeyValue { - ::std::default::Default::default() - } - - // string key = 1; - - - pub fn get_key(&self) -> &str { - &self.key - } - pub fn clear_key(&mut self) { - self.key.clear(); - } - - // Param is passed by value, moved - pub fn set_key(&mut self, v: ::std::string::String) { - self.key = v; - } - - // Mutable pointer to the field. - // If field is not initialized, it is initialized with default value first. - pub fn mut_key(&mut self) -> &mut ::std::string::String { - &mut self.key - } - - // Take field - pub fn take_key(&mut self) -> ::std::string::String { - ::std::mem::replace(&mut self.key, ::std::string::String::new()) - } - - // string str_value = 2; - - - pub fn get_str_value(&self) -> &str { - match self.one_of_str_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(ref v)) => v, - _ => "", - } - } - pub fn clear_str_value(&mut self) { - self.one_of_str_value = ::std::option::Option::None; - } - - pub fn has_str_value(&self) -> bool { - match self.one_of_str_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(..)) => true, - _ => false, - } - } - - // Param is passed by value, moved - pub fn set_str_value(&mut self, v: ::std::string::String) { - self.one_of_str_value = ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(v)) - } - - // Mutable pointer to the field. - pub fn mut_str_value(&mut self) -> &mut ::std::string::String { - if let ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(_)) = self.one_of_str_value { - } else { - self.one_of_str_value = ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(::std::string::String::new())); - } - match self.one_of_str_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(ref mut v)) => v, - _ => panic!(), - } - } - - // Take field - pub fn take_str_value(&mut self) -> ::std::string::String { - if self.has_str_value() { - match self.one_of_str_value.take() { - ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(v)) => v, - _ => panic!(), - } - } else { - ::std::string::String::new() - } - } - - // int64 int_value = 3; - - - pub fn get_int_value(&self) -> i64 { - match self.one_of_int_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_int_value::int_value(v)) => v, - _ => 0, - } - } - pub fn clear_int_value(&mut self) { - self.one_of_int_value = ::std::option::Option::None; - } - - pub fn has_int_value(&self) -> bool { - match self.one_of_int_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_int_value::int_value(..)) => true, - _ => false, - } - } - - // Param is passed by value, moved - pub fn set_int_value(&mut self, v: i64) { - self.one_of_int_value = ::std::option::Option::Some(KeyValue_oneof_one_of_int_value::int_value(v)) - } - - // double float_value = 4; - - - pub fn get_float_value(&self) -> f64 { - match self.one_of_float_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_float_value::float_value(v)) => v, - _ => 0., - } - } - pub fn clear_float_value(&mut self) { - self.one_of_float_value = ::std::option::Option::None; - } - - pub fn has_float_value(&self) -> bool { - match self.one_of_float_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_float_value::float_value(..)) => true, - _ => false, - } - } - - // Param is passed by value, moved - pub fn set_float_value(&mut self, v: f64) { - self.one_of_float_value = ::std::option::Option::Some(KeyValue_oneof_one_of_float_value::float_value(v)) - } - - // bool bool_value = 5; - - - pub fn get_bool_value(&self) -> bool { - match self.one_of_bool_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_bool_value::bool_value(v)) => v, - _ => false, - } - } - pub fn clear_bool_value(&mut self) { - self.one_of_bool_value = ::std::option::Option::None; - } - - pub fn has_bool_value(&self) -> bool { - match self.one_of_bool_value { - ::std::option::Option::Some(KeyValue_oneof_one_of_bool_value::bool_value(..)) => true, - _ => false, - } - } - - // Param is passed by value, moved - pub fn set_bool_value(&mut self, v: bool) { - self.one_of_bool_value = ::std::option::Option::Some(KeyValue_oneof_one_of_bool_value::bool_value(v)) - } -} - -impl ::protobuf::Message for KeyValue { - fn is_initialized(&self) -> bool { - true - } - - fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { - while !is.eof()? { - let (field_number, wire_type) = is.read_tag_unpack()?; - match field_number { - 1 => { - ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.key)?; - }, - 2 => { - if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - } - self.one_of_str_value = ::std::option::Option::Some(KeyValue_oneof_one_of_str_value::str_value(is.read_string()?)); - }, - 3 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - } - self.one_of_int_value = ::std::option::Option::Some(KeyValue_oneof_one_of_int_value::int_value(is.read_int64()?)); - }, - 4 => { - if wire_type != ::protobuf::wire_format::WireTypeFixed64 { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - } - self.one_of_float_value = ::std::option::Option::Some(KeyValue_oneof_one_of_float_value::float_value(is.read_double()?)); - }, - 5 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - } - self.one_of_bool_value = ::std::option::Option::Some(KeyValue_oneof_one_of_bool_value::bool_value(is.read_bool()?)); - }, - _ => { - ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; - }, - }; - } - ::std::result::Result::Ok(()) - } - - // Compute sizes of nested messages - #[allow(unused_variables)] - fn compute_size(&self) -> u32 { - let mut my_size = 0; - if !self.key.is_empty() { - my_size += ::protobuf::rt::string_size(1, &self.key); - } - if let ::std::option::Option::Some(ref v) = self.one_of_str_value { - match v { - &KeyValue_oneof_one_of_str_value::str_value(ref v) => { - my_size += ::protobuf::rt::string_size(2, &v); - }, - }; - } - if let ::std::option::Option::Some(ref v) = self.one_of_int_value { - match v { - &KeyValue_oneof_one_of_int_value::int_value(v) => { - my_size += ::protobuf::rt::value_size(3, v, ::protobuf::wire_format::WireTypeVarint); - }, - }; - } - if let ::std::option::Option::Some(ref v) = self.one_of_float_value { - match v { - &KeyValue_oneof_one_of_float_value::float_value(v) => { - my_size += 9; - }, - }; - } - if let ::std::option::Option::Some(ref v) = self.one_of_bool_value { - match v { - &KeyValue_oneof_one_of_bool_value::bool_value(v) => { - my_size += 2; - }, - }; - } - my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); - self.cached_size.set(my_size); - my_size - } - - fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { - if !self.key.is_empty() { - os.write_string(1, &self.key)?; - } - if let ::std::option::Option::Some(ref v) = self.one_of_str_value { - match v { - &KeyValue_oneof_one_of_str_value::str_value(ref v) => { - os.write_string(2, v)?; - }, - }; - } - if let ::std::option::Option::Some(ref v) = self.one_of_int_value { - match v { - &KeyValue_oneof_one_of_int_value::int_value(v) => { - os.write_int64(3, v)?; - }, - }; - } - if let ::std::option::Option::Some(ref v) = self.one_of_float_value { - match v { - &KeyValue_oneof_one_of_float_value::float_value(v) => { - os.write_double(4, v)?; - }, - }; - } - if let ::std::option::Option::Some(ref v) = self.one_of_bool_value { - match v { - &KeyValue_oneof_one_of_bool_value::bool_value(v) => { - os.write_bool(5, v)?; - }, - }; - } - os.write_unknown_fields(self.get_unknown_fields())?; - ::std::result::Result::Ok(()) - } - - fn get_cached_size(&self) -> u32 { - self.cached_size.get() - } - - fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { - &self.unknown_fields - } - - fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { - &mut self.unknown_fields - } - - fn as_any(&self) -> &dyn (::std::any::Any) { - self as &dyn (::std::any::Any) - } - fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { - self as &mut dyn (::std::any::Any) - } - fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { - self - } - - fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - Self::descriptor_static() - } - - fn new() -> KeyValue { - KeyValue::new() - } - - fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "key", - |m: &KeyValue| { &m.key }, - |m: &mut KeyValue| { &mut m.key }, - )); - fields.push(::protobuf::reflect::accessor::make_singular_string_accessor::<_>( - "str_value", - KeyValue::has_str_value, - KeyValue::get_str_value, - )); - fields.push(::protobuf::reflect::accessor::make_singular_i64_accessor::<_>( - "int_value", - KeyValue::has_int_value, - KeyValue::get_int_value, - )); - fields.push(::protobuf::reflect::accessor::make_singular_f64_accessor::<_>( - "float_value", - KeyValue::has_float_value, - KeyValue::get_float_value, - )); - fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor::<_>( - "bool_value", - KeyValue::has_bool_value, - KeyValue::get_bool_value, - )); - ::protobuf::reflect::MessageDescriptor::new_pb_name::( - "KeyValue", - fields, - file_descriptor_proto() - ) - }) - } - - fn default_instance() -> &'static KeyValue { - static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; - instance.get(KeyValue::new) - } -} - -impl ::protobuf::Clear for KeyValue { - fn clear(&mut self) { - self.key.clear(); - self.one_of_str_value = ::std::option::Option::None; - self.one_of_int_value = ::std::option::Option::None; - self.one_of_float_value = ::std::option::Option::None; - self.one_of_bool_value = ::std::option::Option::None; - self.unknown_fields.clear(); - } -} - -impl ::std::fmt::Debug for KeyValue { - fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { - ::protobuf::text_format::fmt(self, f) - } -} - -impl ::protobuf::reflect::ProtobufValue for KeyValue { - fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { - ::protobuf::reflect::ReflectValueRef::Message(self) - } -} - -static file_descriptor_proto_data: &'static [u8] = b"\ - \n\x08kv.proto\"\xf1\x01\n\x08KeyValue\x12\x10\n\x03key\x18\x01\x20\x01(\ - \tR\x03key\x12\x1d\n\tstr_value\x18\x02\x20\x01(\tH\0R\x08strValue\x12\ - \x1d\n\tint_value\x18\x03\x20\x01(\x03H\x01R\x08intValue\x12!\n\x0bfloat\ - _value\x18\x04\x20\x01(\x01H\x02R\nfloatValue\x12\x1f\n\nbool_value\x18\ - \x05\x20\x01(\x08H\x03R\tboolValueB\x12\n\x10one_of_str_valueB\x12\n\x10\ - one_of_int_valueB\x14\n\x12one_of_float_valueB\x13\n\x11one_of_bool_valu\ - eJ\xa9\x03\n\x06\x12\x04\0\0\x08\x01\n\x08\n\x01\x0c\x12\x03\0\0\x12\n\n\ - \n\x02\x04\0\x12\x04\x02\0\x08\x01\n\n\n\x03\x04\0\x01\x12\x03\x02\x08\ - \x10\n\x0b\n\x04\x04\0\x02\0\x12\x03\x03\x04\x13\n\x0c\n\x05\x04\0\x02\0\ - \x05\x12\x03\x03\x04\n\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03\x03\x0b\x0e\n\ - \x0c\n\x05\x04\0\x02\0\x03\x12\x03\x03\x11\x12\n\x0b\n\x04\x04\0\x08\0\ - \x12\x03\x04\x044\n\x0c\n\x05\x04\0\x08\0\x01\x12\x03\x04\n\x1a\n\x0b\n\ - \x04\x04\0\x02\x01\x12\x03\x04\x1d2\n\x0c\n\x05\x04\0\x02\x01\x05\x12\ - \x03\x04\x1d#\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03\x04$-\n\x0c\n\x05\ - \x04\0\x02\x01\x03\x12\x03\x0401\n\x0b\n\x04\x04\0\x08\x01\x12\x03\x05\ - \x043\n\x0c\n\x05\x04\0\x08\x01\x01\x12\x03\x05\n\x1a\n\x0b\n\x04\x04\0\ - \x02\x02\x12\x03\x05\x1d1\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x03\x05\x1d\ - \"\n\x0c\n\x05\x04\0\x02\x02\x01\x12\x03\x05#,\n\x0c\n\x05\x04\0\x02\x02\ - \x03\x12\x03\x05/0\n\x0b\n\x04\x04\0\x08\x02\x12\x03\x06\x048\n\x0c\n\ - \x05\x04\0\x08\x02\x01\x12\x03\x06\n\x1c\n\x0b\n\x04\x04\0\x02\x03\x12\ - \x03\x06\x1f6\n\x0c\n\x05\x04\0\x02\x03\x05\x12\x03\x06\x1f%\n\x0c\n\x05\ - \x04\0\x02\x03\x01\x12\x03\x06&1\n\x0c\n\x05\x04\0\x02\x03\x03\x12\x03\ - \x0645\n\x0b\n\x04\x04\0\x08\x03\x12\x03\x07\x044\n\x0c\n\x05\x04\0\x08\ - \x03\x01\x12\x03\x07\n\x1b\n\x0b\n\x04\x04\0\x02\x04\x12\x03\x07\x1e2\n\ - \x0c\n\x05\x04\0\x02\x04\x05\x12\x03\x07\x1e\"\n\x0c\n\x05\x04\0\x02\x04\ - \x01\x12\x03\x07#-\n\x0c\n\x05\x04\0\x02\x04\x03\x12\x03\x0701b\x06proto\ - 3\ -"; - -static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; - -fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { - ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap() -} - -pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) -} diff --git a/frontend/rust-lib/lib-infra/src/protobuf/proto/kv.proto b/frontend/rust-lib/lib-infra/src/protobuf/proto/kv.proto deleted file mode 100644 index 0644b43adc..0000000000 --- a/frontend/rust-lib/lib-infra/src/protobuf/proto/kv.proto +++ /dev/null @@ -1,9 +0,0 @@ -syntax = "proto3"; - -message KeyValue { - string key = 1; - oneof one_of_str_value { string str_value = 2; }; - oneof one_of_int_value { int64 int_value = 3; }; - oneof one_of_float_value { double float_value = 4; }; - oneof one_of_bool_value { bool bool_value = 5; }; -} diff --git a/frontend/scripts/flowy-tool/src/util/file.rs b/frontend/scripts/flowy-tool/src/util/file.rs index 95197393e0..8a9f93f8a2 100644 --- a/frontend/scripts/flowy-tool/src/util/file.rs +++ b/frontend/scripts/flowy-tool/src/util/file.rs @@ -10,7 +10,7 @@ use tera::Tera; use walkdir::WalkDir; pub fn read_file(path: &str) -> Option { - let mut file = File::open(path).expect("Unable to open file"); + let mut file = File::open(path).expect(&format!("Unable to open file at {}", path)); let mut content = String::new(); match file.read_to_string(&mut content) { Ok(_) => Some(content), diff --git a/shared-lib/flowy-derive/src/derive_cache/derive_cache.rs b/shared-lib/flowy-derive/src/derive_cache/derive_cache.rs index f5f90b2b79..885b9475dd 100644 --- a/shared-lib/flowy-derive/src/derive_cache/derive_cache.rs +++ b/shared-lib/flowy-derive/src/derive_cache/derive_cache.rs @@ -16,13 +16,12 @@ pub fn category_from_str(type_str: &str) -> TypeCategory { "HashMap" => TypeCategory::Map, "u8" => TypeCategory::Bytes, "String" => TypeCategory::Str, - "KeyValue" - | "NetworkState" - | "WorkspaceError" + "WorkspaceError" | "DocError" | "FFIRequest" | "FFIResponse" | "SubscribeObject" + | "NetworkState" | "UserError" | "QueryAppRequest" | "AppIdentifier" @@ -80,12 +79,12 @@ pub fn category_from_str(type_str: &str) -> TypeCategory { | "UpdateUserRequest" | "UpdateUserParams" => TypeCategory::Protobuf, - "NetworkType" - | "WorkspaceEvent" + "WorkspaceEvent" | "WorkspaceNotification" | "ErrorCode" | "DocObservable" | "FFIStatusCode" + | "NetworkType" | "UserEvent" | "UserNotification" | "TrashType"