mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-16 22:50:29 +03:00
fix: login issue (#4546)
* fix: reset server url when using appflowy cloud the first time * refactor: set authenticator in frontend * chore: log version * chore: show hint when changing the server type * chore: bump version * chore: fix test * chore: bump collab
This commit is contained in:
parent
55c97b56a3
commit
c0aef8f4fe
@ -11,7 +11,6 @@ import 'package:appflowy/user/application/auth/supabase_mock_auth_service.dart';
|
||||
import 'package:appflowy/user/presentation/presentation.dart';
|
||||
import 'package:appflowy/user/presentation/screens/sign_in_screen/widgets/widgets.dart';
|
||||
import 'package:appflowy/workspace/application/settings/prelude.dart';
|
||||
import 'package:dartz/dartz.dart';
|
||||
import 'package:flowy_infra/uuid.dart';
|
||||
import 'package:flowy_infra_ui/flowy_infra_ui.dart';
|
||||
import 'package:flutter/gestures.dart';
|
||||
@ -78,14 +77,14 @@ extension AppFlowyTestBase on WidgetTester {
|
||||
await useLocal();
|
||||
break;
|
||||
case AuthenticatorType.supabase:
|
||||
await useSupabaseCloud();
|
||||
await useTestSupabaseCloud();
|
||||
getIt.unregister<AuthService>();
|
||||
getIt.registerFactory<AuthService>(
|
||||
() => SupabaseMockAuthService(),
|
||||
);
|
||||
break;
|
||||
case AuthenticatorType.appflowyCloudSelfHost:
|
||||
await useAppFlowyCloud();
|
||||
await useTestSelfHostedAppFlowyCloud();
|
||||
getIt.unregister<AuthService>();
|
||||
getIt.registerFactory<AuthService>(
|
||||
() => AppFlowyCloudMockAuthService(email: email),
|
||||
@ -249,20 +248,18 @@ extension AppFlowyFinderTestBase on CommonFinders {
|
||||
}
|
||||
|
||||
Future<void> useLocal() async {
|
||||
await setAuthenticatorType(AuthenticatorType.local);
|
||||
await useLocalServer();
|
||||
}
|
||||
|
||||
Future<void> useSupabaseCloud() async {
|
||||
await setAuthenticatorType(AuthenticatorType.supabase);
|
||||
await setSupbaseServer(
|
||||
Some(TestEnv.supabaseUrl),
|
||||
Some(TestEnv.supabaseAnonKey),
|
||||
Future<void> useTestSupabaseCloud() async {
|
||||
await useSupabaseCloud(
|
||||
url: TestEnv.supabaseUrl,
|
||||
anonKey: TestEnv.supabaseAnonKey,
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> useAppFlowyCloud() async {
|
||||
await setAuthenticatorType(AuthenticatorType.appflowyCloudSelfHost);
|
||||
await setAppFlowyCloudUrl(Some(TestEnv.afCloudUrl));
|
||||
Future<void> useTestSelfHostedAppFlowyCloud() async {
|
||||
await useSelfHostedAppFlowyCloudWithURL(TestEnv.afCloudUrl);
|
||||
}
|
||||
|
||||
Future<String> mockApplicationDataStorage({
|
||||
|
@ -7,6 +7,7 @@ part 'backend_env.g.dart';
|
||||
class AppFlowyConfiguration {
|
||||
AppFlowyConfiguration({
|
||||
required this.root,
|
||||
required this.app_version,
|
||||
required this.custom_app_path,
|
||||
required this.origin_app_path,
|
||||
required this.device_id,
|
||||
@ -20,6 +21,7 @@ class AppFlowyConfiguration {
|
||||
_$AppFlowyConfigurationFromJson(json);
|
||||
|
||||
final String root;
|
||||
final String app_version;
|
||||
final String custom_app_path;
|
||||
final String origin_app_path;
|
||||
final String device_id;
|
||||
|
45
frontend/appflowy_flutter/lib/env/cloud_env.dart
vendored
45
frontend/appflowy_flutter/lib/env/cloud_env.dart
vendored
@ -17,7 +17,7 @@ import 'package:dartz/dartz.dart';
|
||||
/// - `CloudType.local` is stored as "0".
|
||||
/// - `CloudType.supabase` is stored as "1".
|
||||
/// - `CloudType.appflowyCloud` is stored as "2".
|
||||
Future<void> setAuthenticatorType(AuthenticatorType ty) async {
|
||||
Future<void> _setAuthenticatorType(AuthenticatorType ty) async {
|
||||
switch (ty) {
|
||||
case AuthenticatorType.local:
|
||||
await getIt<KeyValueStorage>().set(KVKeys.kCloudType, 0.toString());
|
||||
@ -54,7 +54,7 @@ Future<AuthenticatorType> getAuthenticatorType() async {
|
||||
final value = await getIt<KeyValueStorage>().get(KVKeys.kCloudType);
|
||||
if (value.isNone() && !integrationMode().isUnitTest) {
|
||||
// if the cloud type is not set, then set it to AppFlowy Cloud as default.
|
||||
await setAuthenticatorType(AuthenticatorType.appflowyCloud);
|
||||
await useAppFlowyBetaCloudWithURL(kAppflowyCloudUrl);
|
||||
return AuthenticatorType.appflowyCloud;
|
||||
}
|
||||
|
||||
@ -70,7 +70,7 @@ Future<AuthenticatorType> getAuthenticatorType() async {
|
||||
case "4":
|
||||
return AuthenticatorType.appflowyCloudDevelop;
|
||||
default:
|
||||
await setAuthenticatorType(AuthenticatorType.appflowyCloud);
|
||||
await useAppFlowyBetaCloudWithURL(kAppflowyCloudUrl);
|
||||
return AuthenticatorType.appflowyCloud;
|
||||
}
|
||||
}
|
||||
@ -171,13 +171,35 @@ AuthenticatorType currentCloudType() {
|
||||
return getIt<AppFlowyCloudSharedEnv>().authenticatorType;
|
||||
}
|
||||
|
||||
Future<void> setAppFlowyCloudUrl(Option<String> url) async {
|
||||
Future<void> _setAppFlowyCloudUrl(Option<String> url) async {
|
||||
await url.fold(
|
||||
() => getIt<KeyValueStorage>().set(KVKeys.kAppflowyCloudBaseURL, ""),
|
||||
(s) => getIt<KeyValueStorage>().set(KVKeys.kAppflowyCloudBaseURL, s),
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> useSelfHostedAppFlowyCloudWithURL(String url) async {
|
||||
await _setAuthenticatorType(AuthenticatorType.appflowyCloudSelfHost);
|
||||
await _setAppFlowyCloudUrl(Some(url));
|
||||
}
|
||||
|
||||
Future<void> useAppFlowyBetaCloudWithURL(String url) async {
|
||||
await _setAuthenticatorType(AuthenticatorType.appflowyCloud);
|
||||
await _setAppFlowyCloudUrl(Some(url));
|
||||
}
|
||||
|
||||
Future<void> useLocalServer() async {
|
||||
await _setAuthenticatorType(AuthenticatorType.local);
|
||||
}
|
||||
|
||||
Future<void> useSupabaseCloud({
|
||||
required String url,
|
||||
required String anonKey,
|
||||
}) async {
|
||||
await _setAuthenticatorType(AuthenticatorType.supabase);
|
||||
await setSupbaseServer(Some(url), Some(anonKey));
|
||||
}
|
||||
|
||||
/// Use getIt<AppFlowyCloudSharedEnv>() to get the shared environment.
|
||||
class AppFlowyCloudSharedEnv {
|
||||
AppFlowyCloudSharedEnv({
|
||||
@ -198,12 +220,13 @@ class AppFlowyCloudSharedEnv {
|
||||
// Use the custom cloud configuration.
|
||||
var authenticatorType = await getAuthenticatorType();
|
||||
|
||||
final appflowyCloudConfig = authenticatorType.isLocal
|
||||
? AppFlowyCloudConfiguration.defaultConfig()
|
||||
: await getAppFlowyCloudConfig(authenticatorType);
|
||||
final supabaseCloudConfig = authenticatorType.isLocal
|
||||
? SupabaseConfiguration.defaultConfig()
|
||||
: await getSupabaseCloudConfig();
|
||||
final appflowyCloudConfig = authenticatorType.isAppFlowyCloudEnabled
|
||||
? await getAppFlowyCloudConfig(authenticatorType)
|
||||
: AppFlowyCloudConfiguration.defaultConfig();
|
||||
|
||||
final supabaseCloudConfig = authenticatorType.isSupabaseEnabled
|
||||
? await getSupabaseCloudConfig()
|
||||
: SupabaseConfiguration.defaultConfig();
|
||||
|
||||
// In the backend, the value '2' represents the use of AppFlowy Cloud. However, in the frontend,
|
||||
// we distinguish between [AuthenticatorType.appflowyCloudSelfHost] and [AuthenticatorType.appflowyCloud].
|
||||
@ -283,7 +306,7 @@ Future<String> getAppFlowyCloudUrl() async {
|
||||
final result =
|
||||
await getIt<KeyValueStorage>().get(KVKeys.kAppflowyCloudBaseURL);
|
||||
return result.fold(
|
||||
() => "https://beta.appflowy.cloud",
|
||||
() => kAppflowyCloudUrl,
|
||||
(url) => url,
|
||||
);
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ class AppFlowyCloudPage extends StatelessWidget {
|
||||
body: Padding(
|
||||
padding: const EdgeInsets.all(20.0),
|
||||
child: SettingCloud(
|
||||
didResetServerUrl: () async {
|
||||
restartAppFlowy: () async {
|
||||
await runAppFlowy();
|
||||
},
|
||||
),
|
||||
|
@ -3,7 +3,6 @@ import 'package:appflowy/generated/locale_keys.g.dart';
|
||||
import 'package:appflowy/startup/startup.dart';
|
||||
import 'package:appflowy/workspace/application/settings/appflowy_cloud_urls_bloc.dart';
|
||||
import 'package:appflowy_backend/log.dart';
|
||||
import 'package:dartz/dartz.dart' show Some;
|
||||
import 'package:easy_localization/easy_localization.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
@ -99,7 +98,7 @@ class _SelfHostUrlBottomSheetState extends State<SelfHostUrlBottomSheet> {
|
||||
if (value.isNotEmpty) {
|
||||
validateUrl(value).fold(
|
||||
(url) async {
|
||||
await setAppFlowyCloudUrl(Some(url));
|
||||
await useSelfHostedAppFlowyCloudWithURL(url);
|
||||
await runAppFlowy();
|
||||
},
|
||||
(err) => Log.error(err),
|
||||
|
@ -1,11 +1,13 @@
|
||||
class LaunchConfiguration {
|
||||
const LaunchConfiguration({
|
||||
this.isAnon = false,
|
||||
required this.version,
|
||||
required this.rustEnvs,
|
||||
});
|
||||
|
||||
// APP will automatically register after launching.
|
||||
final bool isAnon;
|
||||
final String version;
|
||||
//
|
||||
final Map<String, String> rustEnvs;
|
||||
}
|
||||
|
@ -81,14 +81,13 @@ class FlowyRunner {
|
||||
|
||||
final config = LaunchConfiguration(
|
||||
isAnon: isAnon,
|
||||
// Unit test can't use the package_info_plus plugin
|
||||
version: mode.isUnitTest
|
||||
? '1.0.0'
|
||||
: await PackageInfo.fromPlatform().then((value) => value.version),
|
||||
rustEnvs: rustEnvsBuilder?.call() ?? {},
|
||||
);
|
||||
|
||||
if (!mode.isUnitTest) {
|
||||
// Unit test can't use the package_info_plus plugin
|
||||
config.rustEnvs["APP_VERSION"] =
|
||||
await PackageInfo.fromPlatform().then((value) => value.version);
|
||||
}
|
||||
// Specify the env
|
||||
await initGetIt(getIt, mode, f, config);
|
||||
await didInitGetItCallback?.call();
|
||||
|
@ -31,6 +31,7 @@ class InitRustSDKTask extends LaunchTask {
|
||||
// Pass the environment variables to the Rust SDK
|
||||
final env = _makeAppFlowyConfiguration(
|
||||
root.path,
|
||||
context.config.version,
|
||||
dir.path,
|
||||
applicationPath.path,
|
||||
deviceId,
|
||||
@ -45,6 +46,7 @@ class InitRustSDKTask extends LaunchTask {
|
||||
|
||||
AppFlowyConfiguration _makeAppFlowyConfiguration(
|
||||
String root,
|
||||
String appVersion,
|
||||
String customAppPath,
|
||||
String originAppPath,
|
||||
String deviceId, {
|
||||
@ -53,6 +55,7 @@ AppFlowyConfiguration _makeAppFlowyConfiguration(
|
||||
final env = getIt<AppFlowyCloudSharedEnv>();
|
||||
return AppFlowyConfiguration(
|
||||
root: root,
|
||||
app_version: appVersion,
|
||||
custom_app_path: customAppPath,
|
||||
origin_app_path: originAppPath,
|
||||
device_id: deviceId,
|
||||
|
@ -52,6 +52,7 @@ class AppFlowyCloudSettingBloc
|
||||
emit(
|
||||
state.copyWith(
|
||||
setting: setting,
|
||||
showRestartHint: setting.serverUrl.isNotEmpty,
|
||||
),
|
||||
);
|
||||
},
|
||||
@ -75,11 +76,13 @@ class AppFlowyCloudSettingEvent with _$AppFlowyCloudSettingEvent {
|
||||
class AppFlowyCloudSettingState with _$AppFlowyCloudSettingState {
|
||||
const factory AppFlowyCloudSettingState({
|
||||
required CloudSettingPB setting,
|
||||
required bool showRestartHint,
|
||||
}) = _AppFlowyCloudSettingState;
|
||||
|
||||
factory AppFlowyCloudSettingState.initial(CloudSettingPB setting) =>
|
||||
AppFlowyCloudSettingState(
|
||||
setting: setting,
|
||||
showRestartHint: setting.serverUrl.isNotEmpty,
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -16,24 +16,29 @@ class AppFlowyCloudURLsBloc
|
||||
await event.when(
|
||||
initial: () async {},
|
||||
updateServerUrl: (url) {
|
||||
emit(state.copyWith(updatedServerUrl: url));
|
||||
emit(
|
||||
state.copyWith(
|
||||
updatedServerUrl: url,
|
||||
urlError: none(),
|
||||
showRestartHint: url.isNotEmpty,
|
||||
),
|
||||
);
|
||||
},
|
||||
confirmUpdate: () async {
|
||||
if (state.updatedServerUrl.isEmpty) {
|
||||
emit(
|
||||
state.copyWith(
|
||||
updatedServerUrl: "",
|
||||
urlError: none(),
|
||||
restartApp: true,
|
||||
urlError: Some(
|
||||
LocaleKeys.settings_menu_appFlowyCloudUrlCanNotBeEmpty.tr(),
|
||||
),
|
||||
restartApp: false,
|
||||
),
|
||||
);
|
||||
await setAppFlowyCloudUrl(none());
|
||||
} else {
|
||||
validateUrl(state.updatedServerUrl).fold(
|
||||
(url) async {
|
||||
if (state.config.base_url != url) {
|
||||
await setAppFlowyCloudUrl(Some(url));
|
||||
}
|
||||
await useSelfHostedAppFlowyCloudWithURL(url);
|
||||
add(const AppFlowyCloudURLsEvent.didSaveConfig());
|
||||
},
|
||||
(err) => emit(state.copyWith(urlError: Some(err))),
|
||||
@ -69,6 +74,7 @@ class AppFlowyCloudURLsState with _$AppFlowyCloudURLsState {
|
||||
required String updatedServerUrl,
|
||||
required Option<String> urlError,
|
||||
required bool restartApp,
|
||||
required bool showRestartHint,
|
||||
}) = _AppFlowyCloudURLsState;
|
||||
|
||||
factory AppFlowyCloudURLsState.initial() => AppFlowyCloudURLsState(
|
||||
@ -76,6 +82,10 @@ class AppFlowyCloudURLsState with _$AppFlowyCloudURLsState {
|
||||
urlError: none(),
|
||||
updatedServerUrl:
|
||||
getIt<AppFlowyCloudSharedEnv>().appflowyCloudConfig.base_url,
|
||||
showRestartHint: getIt<AppFlowyCloudSharedEnv>()
|
||||
.appflowyCloudConfig
|
||||
.base_url
|
||||
.isNotEmpty,
|
||||
restartApp: false,
|
||||
);
|
||||
}
|
||||
|
@ -19,49 +19,63 @@ class SupabaseCloudURLsBloc
|
||||
on<SupabaseCloudURLsEvent>((event, emit) async {
|
||||
await event.when(
|
||||
updateUrl: (String url) {
|
||||
emit(state.copyWith(updatedUrl: url));
|
||||
emit(
|
||||
state.copyWith(
|
||||
updatedUrl: url,
|
||||
showRestartHint: url.isNotEmpty && state.upatedAnonKey.isNotEmpty,
|
||||
urlError: none(),
|
||||
),
|
||||
);
|
||||
},
|
||||
updateAnonKey: (String anonKey) {
|
||||
emit(state.copyWith(upatedAnonKey: anonKey));
|
||||
emit(
|
||||
state.copyWith(
|
||||
upatedAnonKey: anonKey,
|
||||
showRestartHint:
|
||||
anonKey.isNotEmpty && state.updatedUrl.isNotEmpty,
|
||||
anonKeyError: none(),
|
||||
),
|
||||
);
|
||||
},
|
||||
confirmUpdate: () async {
|
||||
if (state.updatedUrl.isEmpty) {
|
||||
emit(
|
||||
state.copyWith(
|
||||
urlError: none(),
|
||||
urlError: Some(
|
||||
LocaleKeys.settings_menu_cloudSupabaseUrlCanNotBeEmpty.tr(),
|
||||
),
|
||||
anonKeyError: none(),
|
||||
restartApp: true,
|
||||
restartApp: false,
|
||||
),
|
||||
);
|
||||
await setSupbaseServer(none(), none());
|
||||
} else {
|
||||
// The anon key can't be empty if the url is not empty.
|
||||
if (state.upatedAnonKey.isEmpty) {
|
||||
emit(
|
||||
state.copyWith(
|
||||
urlError: none(),
|
||||
anonKeyError: some(
|
||||
LocaleKeys.settings_menu_cloudSupabaseAnonKeyCanNotBeEmpty
|
||||
.tr(),
|
||||
),
|
||||
restartApp: false,
|
||||
),
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
validateUrl(state.updatedUrl).fold(
|
||||
(error) => emit(state.copyWith(urlError: Some(error))),
|
||||
(_) async {
|
||||
await setSupbaseServer(
|
||||
Some(state.updatedUrl),
|
||||
Some(state.upatedAnonKey),
|
||||
);
|
||||
|
||||
add(const SupabaseCloudURLsEvent.didSaveConfig());
|
||||
},
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
if (state.upatedAnonKey.isEmpty) {
|
||||
emit(
|
||||
state.copyWith(
|
||||
urlError: none(),
|
||||
anonKeyError: Some(
|
||||
LocaleKeys.settings_menu_cloudSupabaseAnonKeyCanNotBeEmpty
|
||||
.tr(),
|
||||
),
|
||||
restartApp: false,
|
||||
),
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
validateUrl(state.updatedUrl).fold(
|
||||
(error) => emit(state.copyWith(urlError: Some(error))),
|
||||
(_) async {
|
||||
await useSupabaseCloud(
|
||||
url: state.updatedUrl,
|
||||
anonKey: state.upatedAnonKey,
|
||||
);
|
||||
|
||||
add(const SupabaseCloudURLsEvent.didSaveConfig());
|
||||
},
|
||||
);
|
||||
},
|
||||
didSaveConfig: () {
|
||||
emit(
|
||||
@ -99,6 +113,7 @@ class SupabaseCloudURLsState with _$SupabaseCloudURLsState {
|
||||
required Option<String> urlError,
|
||||
required Option<String> anonKeyError,
|
||||
required bool restartApp,
|
||||
required bool showRestartHint,
|
||||
}) = _SupabaseCloudURLsState;
|
||||
|
||||
factory SupabaseCloudURLsState.initial() {
|
||||
@ -109,6 +124,7 @@ class SupabaseCloudURLsState with _$SupabaseCloudURLsState {
|
||||
urlError: none(),
|
||||
anonKeyError: none(),
|
||||
restartApp: false,
|
||||
showRestartHint: config.url.isNotEmpty && config.anon_key.isNotEmpty,
|
||||
config: config,
|
||||
);
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ class SettingsDialog extends StatelessWidget {
|
||||
return const SettingsNotificationsView();
|
||||
case SettingsPage.cloud:
|
||||
return SettingCloud(
|
||||
didResetServerUrl: () => restartApp(),
|
||||
restartAppFlowy: () => restartApp(),
|
||||
);
|
||||
case SettingsPage.shortcuts:
|
||||
return const SettingsCustomizeShortcutsWrapper();
|
||||
|
@ -8,13 +8,32 @@ import 'package:flutter/material.dart';
|
||||
class RestartButton extends StatelessWidget {
|
||||
const RestartButton({
|
||||
super.key,
|
||||
required this.showRestartHint,
|
||||
required this.onClick,
|
||||
});
|
||||
|
||||
final bool showRestartHint;
|
||||
final VoidCallback onClick;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final List<Widget> children = [_buildRestartButton()];
|
||||
if (showRestartHint) {
|
||||
children.add(
|
||||
Padding(
|
||||
padding: const EdgeInsets.only(top: 10),
|
||||
child: FlowyText(
|
||||
LocaleKeys.settings_menu_restartAppTip.tr(),
|
||||
maxLines: null,
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
return Column(children: children);
|
||||
}
|
||||
|
||||
Widget _buildRestartButton() {
|
||||
if (PlatformExtension.isDesktopOrWeb) {
|
||||
return Row(
|
||||
children: [
|
||||
|
@ -9,7 +9,7 @@ import 'package:appflowy_backend/dispatch/dispatch.dart';
|
||||
import 'package:appflowy_backend/log.dart';
|
||||
import 'package:appflowy_backend/protobuf/flowy-error/errors.pb.dart';
|
||||
import 'package:appflowy_backend/protobuf/flowy-user/user_setting.pb.dart';
|
||||
import 'package:dartz/dartz.dart' show Either, Some;
|
||||
import 'package:dartz/dartz.dart' show Either;
|
||||
import 'package:easy_localization/easy_localization.dart';
|
||||
import 'package:flowy_infra/size.dart';
|
||||
import 'package:flowy_infra_ui/flowy_infra_ui.dart';
|
||||
@ -58,23 +58,27 @@ class AppFlowyCloudViewSetting extends StatelessWidget {
|
||||
return BlocProvider(
|
||||
create: (context) => AppFlowyCloudSettingBloc(setting)
|
||||
..add(const AppFlowyCloudSettingEvent.initial()),
|
||||
child: Column(
|
||||
children: [
|
||||
const AppFlowyCloudEnableSync(),
|
||||
const VSpace(12),
|
||||
RestartButton(
|
||||
onClick: () {
|
||||
NavigatorAlertDialog(
|
||||
title: LocaleKeys.settings_menu_restartAppTip.tr(),
|
||||
confirm: () async {
|
||||
await setAppFlowyCloudUrl(Some(serverURL));
|
||||
await setAuthenticatorType(authenticatorType);
|
||||
restartAppFlowy();
|
||||
child: BlocBuilder<AppFlowyCloudSettingBloc, AppFlowyCloudSettingState>(
|
||||
builder: (context, state) {
|
||||
return Column(
|
||||
children: [
|
||||
const AppFlowyCloudEnableSync(),
|
||||
const VSpace(12),
|
||||
RestartButton(
|
||||
onClick: () {
|
||||
NavigatorAlertDialog(
|
||||
title: LocaleKeys.settings_menu_restartAppTip.tr(),
|
||||
confirm: () async {
|
||||
await useAppFlowyBetaCloudWithURL(serverURL);
|
||||
restartAppFlowy();
|
||||
},
|
||||
).show(context);
|
||||
},
|
||||
).show(context);
|
||||
},
|
||||
),
|
||||
],
|
||||
showRestartHint: state.showRestartHint,
|
||||
),
|
||||
],
|
||||
);
|
||||
},
|
||||
),
|
||||
);
|
||||
}
|
||||
@ -153,7 +157,6 @@ class AppFlowyCloudURLs extends StatelessWidget {
|
||||
child: BlocListener<AppFlowyCloudURLsBloc, AppFlowyCloudURLsState>(
|
||||
listener: (context, state) async {
|
||||
if (state.restartApp) {
|
||||
await setAuthenticatorType(AuthenticatorType.appflowyCloudSelfHost);
|
||||
restartAppFlowy();
|
||||
}
|
||||
},
|
||||
@ -186,6 +189,7 @@ class AppFlowyCloudURLs extends StatelessWidget {
|
||||
},
|
||||
).show(context);
|
||||
},
|
||||
showRestartHint: state.showRestartHint,
|
||||
),
|
||||
],
|
||||
);
|
||||
|
@ -7,6 +7,7 @@ import 'package:appflowy/mobile/presentation/widgets/widgets.dart';
|
||||
import 'package:appflowy/startup/startup.dart';
|
||||
import 'package:appflowy/workspace/application/settings/cloud_setting_bloc.dart';
|
||||
import 'package:appflowy/workspace/presentation/settings/widgets/setting_local_cloud.dart';
|
||||
import 'package:appflowy/workspace/presentation/widgets/dialogs.dart';
|
||||
import 'package:appflowy_editor/appflowy_editor.dart';
|
||||
import 'package:appflowy_popover/appflowy_popover.dart';
|
||||
import 'package:collection/collection.dart';
|
||||
@ -20,9 +21,9 @@ import 'setting_appflowy_cloud.dart';
|
||||
import 'setting_supabase_cloud.dart';
|
||||
|
||||
class SettingCloud extends StatelessWidget {
|
||||
const SettingCloud({required this.didResetServerUrl, super.key});
|
||||
const SettingCloud({required this.restartAppFlowy, super.key});
|
||||
|
||||
final VoidCallback didResetServerUrl;
|
||||
final VoidCallback restartAppFlowy;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
@ -46,19 +47,15 @@ class SettingCloud extends StatelessWidget {
|
||||
LocaleKeys.settings_menu_cloudServerType.tr(),
|
||||
),
|
||||
),
|
||||
Tooltip(
|
||||
message: LocaleKeys.settings_menu_cloudServerTypeTip
|
||||
.tr(),
|
||||
child: CloudTypeSwitcher(
|
||||
cloudType: state.cloudType,
|
||||
onSelected: (newCloudType) {
|
||||
context.read<CloudSettingBloc>().add(
|
||||
CloudSettingEvent.updateCloudType(
|
||||
newCloudType,
|
||||
),
|
||||
);
|
||||
},
|
||||
),
|
||||
CloudTypeSwitcher(
|
||||
cloudType: state.cloudType,
|
||||
onSelected: (newCloudType) {
|
||||
context.read<CloudSettingBloc>().add(
|
||||
CloudSettingEvent.updateCloudType(
|
||||
newCloudType,
|
||||
),
|
||||
);
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -82,25 +79,25 @@ class SettingCloud extends StatelessWidget {
|
||||
switch (cloudType) {
|
||||
case AuthenticatorType.local:
|
||||
return SettingLocalCloud(
|
||||
didResetServerUrl: didResetServerUrl,
|
||||
restartAppFlowy: restartAppFlowy,
|
||||
);
|
||||
case AuthenticatorType.supabase:
|
||||
return SettingSupabaseCloudView(
|
||||
didResetServerUrl: didResetServerUrl,
|
||||
restartAppFlowy: restartAppFlowy,
|
||||
);
|
||||
case AuthenticatorType.appflowyCloud:
|
||||
return AppFlowyCloudViewSetting(
|
||||
restartAppFlowy: didResetServerUrl,
|
||||
restartAppFlowy: restartAppFlowy,
|
||||
);
|
||||
case AuthenticatorType.appflowyCloudSelfHost:
|
||||
return CustomAppFlowyCloudView(
|
||||
restartAppFlowy: didResetServerUrl,
|
||||
restartAppFlowy: restartAppFlowy,
|
||||
);
|
||||
case AuthenticatorType.appflowyCloudDevelop:
|
||||
return AppFlowyCloudViewSetting(
|
||||
serverURL: "http://localhost",
|
||||
authenticatorType: AuthenticatorType.appflowyCloudDevelop,
|
||||
restartAppFlowy: didResetServerUrl,
|
||||
restartAppFlowy: restartAppFlowy,
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -215,7 +212,13 @@ class CloudTypeItem extends StatelessWidget {
|
||||
: null,
|
||||
onTap: () {
|
||||
if (currentCloudtype != cloudType) {
|
||||
onSelected(cloudType);
|
||||
NavigatorAlertDialog(
|
||||
title: LocaleKeys.settings_menu_changeServerTip.tr(),
|
||||
confirm: () async {
|
||||
onSelected(cloudType);
|
||||
},
|
||||
hideCancleButton: true,
|
||||
).show(context);
|
||||
}
|
||||
PopoverContainer.of(context).close();
|
||||
},
|
||||
|
@ -6,14 +6,15 @@ import 'package:easy_localization/easy_localization.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class SettingLocalCloud extends StatelessWidget {
|
||||
const SettingLocalCloud({super.key, required this.didResetServerUrl});
|
||||
const SettingLocalCloud({super.key, required this.restartAppFlowy});
|
||||
|
||||
final VoidCallback didResetServerUrl;
|
||||
final VoidCallback restartAppFlowy;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return RestartButton(
|
||||
onClick: () => onPressed(context),
|
||||
showRestartHint: true,
|
||||
);
|
||||
}
|
||||
|
||||
@ -21,10 +22,8 @@ class SettingLocalCloud extends StatelessWidget {
|
||||
NavigatorAlertDialog(
|
||||
title: LocaleKeys.settings_menu_restartAppTip.tr(),
|
||||
confirm: () async {
|
||||
await setAuthenticatorType(
|
||||
AuthenticatorType.local,
|
||||
);
|
||||
didResetServerUrl();
|
||||
await useLocalServer();
|
||||
restartAppFlowy();
|
||||
},
|
||||
).show(context);
|
||||
}
|
||||
|
@ -1,4 +1,3 @@
|
||||
import 'package:appflowy/env/cloud_env.dart';
|
||||
import 'package:appflowy/generated/locale_keys.g.dart';
|
||||
import 'package:appflowy/workspace/application/settings/supabase_cloud_setting_bloc.dart';
|
||||
import 'package:appflowy/workspace/application/settings/supabase_cloud_urls_bloc.dart';
|
||||
@ -22,9 +21,9 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
class SettingSupabaseCloudView extends StatelessWidget {
|
||||
const SettingSupabaseCloudView({required this.didResetServerUrl, super.key});
|
||||
const SettingSupabaseCloudView({required this.restartAppFlowy, super.key});
|
||||
|
||||
final VoidCallback didResetServerUrl;
|
||||
final VoidCallback restartAppFlowy;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
@ -55,7 +54,7 @@ class SettingSupabaseCloudView extends StatelessWidget {
|
||||
const VSpace(40),
|
||||
const SupabaseSelfhostTip(),
|
||||
SupabaseCloudURLs(
|
||||
didUpdateUrls: didResetServerUrl,
|
||||
didUpdateUrls: restartAppFlowy,
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -87,7 +86,6 @@ class SupabaseCloudURLs extends StatelessWidget {
|
||||
child: BlocListener<SupabaseCloudURLsBloc, SupabaseCloudURLsState>(
|
||||
listener: (context, state) async {
|
||||
if (state.restartApp) {
|
||||
await setAuthenticatorType(AuthenticatorType.supabase);
|
||||
didUpdateUrls();
|
||||
}
|
||||
},
|
||||
@ -119,7 +117,8 @@ class SupabaseCloudURLs extends StatelessWidget {
|
||||
),
|
||||
const VSpace(20),
|
||||
RestartButton(
|
||||
onClick: () => _restartApp,
|
||||
onClick: () => _restartApp(context),
|
||||
showRestartHint: state.showRestartHint,
|
||||
),
|
||||
],
|
||||
);
|
||||
|
@ -100,11 +100,13 @@ class NavigatorAlertDialog extends StatefulWidget {
|
||||
required this.title,
|
||||
this.cancel,
|
||||
this.confirm,
|
||||
this.hideCancleButton = false,
|
||||
});
|
||||
|
||||
final String title;
|
||||
final void Function()? cancel;
|
||||
final void Function()? confirm;
|
||||
final bool hideCancleButton;
|
||||
|
||||
@override
|
||||
State<NavigatorAlertDialog> createState() => _CreateFlowyAlertDialog();
|
||||
@ -145,10 +147,12 @@ class _CreateFlowyAlertDialog extends State<NavigatorAlertDialog> {
|
||||
widget.confirm?.call();
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
onCancelPressed: () {
|
||||
widget.cancel?.call();
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
onCancelPressed: widget.hideCancleButton
|
||||
? null
|
||||
: () {
|
||||
widget.cancel?.call();
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
),
|
||||
],
|
||||
],
|
||||
@ -249,7 +253,7 @@ class OkCancelButton extends StatelessWidget {
|
||||
onPressed: onCancelPressed,
|
||||
mode: mode,
|
||||
),
|
||||
HSpace(Insets.m),
|
||||
if (onCancelPressed != null) HSpace(Insets.m),
|
||||
if (onOkPressed != null)
|
||||
PrimaryTextButton(
|
||||
okTitle ?? LocaleKeys.button_ok.tr(),
|
||||
|
44
frontend/appflowy_tauri/src-tauri/Cargo.lock
generated
44
frontend/appflowy_tauri/src-tauri/Cargo.lock
generated
@ -162,7 +162,7 @@ checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca"
|
||||
[[package]]
|
||||
name = "app-error"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -714,7 +714,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "client-api"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"again",
|
||||
"anyhow",
|
||||
@ -816,7 +816,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
@ -838,7 +838,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-database"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
@ -846,6 +846,7 @@ dependencies = [
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"collab-plugins",
|
||||
"getrandom 0.2.10",
|
||||
"js-sys",
|
||||
"lazy_static",
|
||||
"lru",
|
||||
@ -866,11 +867,12 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-document"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"getrandom 0.2.10",
|
||||
"nanoid",
|
||||
"parking_lot 0.12.1",
|
||||
"serde",
|
||||
@ -884,11 +886,12 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bytes",
|
||||
"collab",
|
||||
"getrandom 0.2.10",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"serde_repr",
|
||||
@ -898,12 +901,13 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-folder"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"chrono",
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"getrandom 0.2.10",
|
||||
"parking_lot 0.12.1",
|
||||
"serde",
|
||||
"serde_json",
|
||||
@ -934,7 +938,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-plugins"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-stream",
|
||||
@ -946,6 +950,7 @@ dependencies = [
|
||||
"collab-entity",
|
||||
"futures",
|
||||
"futures-util",
|
||||
"getrandom 0.2.10",
|
||||
"indexed_db_futures",
|
||||
"js-sys",
|
||||
"lazy_static",
|
||||
@ -972,11 +977,12 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-user"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"getrandom 0.2.10",
|
||||
"parking_lot 0.12.1",
|
||||
"serde",
|
||||
"serde_json",
|
||||
@ -1194,7 +1200,7 @@ dependencies = [
|
||||
"cssparser-macros",
|
||||
"dtoa-short",
|
||||
"itoa 1.0.6",
|
||||
"phf 0.8.0",
|
||||
"phf 0.11.2",
|
||||
"smallvec",
|
||||
]
|
||||
|
||||
@ -1305,7 +1311,7 @@ checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
|
||||
[[package]]
|
||||
name = "database-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -2568,7 +2574,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "gotrue"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"futures-util",
|
||||
@ -2585,7 +2591,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "gotrue-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -3022,7 +3028,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "infra"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"reqwest",
|
||||
@ -4700,7 +4706,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "realtime-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -4723,7 +4729,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "realtime-protocol"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -5371,7 +5377,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "shared-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -6851,7 +6857,7 @@ checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
|
||||
[[package]]
|
||||
name = "websocket"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"futures-channel",
|
||||
"futures-util",
|
||||
@ -7251,7 +7257,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "workspace-template"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
|
@ -62,7 +62,7 @@ custom-protocol = ["tauri/custom-protocol"]
|
||||
# Run the script:
|
||||
# scripts/tool/update_client_api_rev.sh new_rev_id
|
||||
# ⚠️⚠️⚠️️
|
||||
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "69c69f6474eaa531fd822e9353cc5955b98e45eb" }
|
||||
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "199452d3b77a352c03810d4146b39d76bab0313c" }
|
||||
# Please use the following script to update collab.
|
||||
# Working directory: frontend
|
||||
#
|
||||
@ -72,10 +72,10 @@ client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "69c
|
||||
# To switch to the local path, run:
|
||||
# scripts/tool/update_collab_source.sh
|
||||
# ⚠️⚠️⚠️️
|
||||
collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-database = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-plugins = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-user = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-database = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-plugins = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-user = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
|
@ -17,7 +17,9 @@ pub fn init_flowy_core() -> AppFlowyCore {
|
||||
let device_id = uuid::Uuid::new_v4().to_string();
|
||||
|
||||
std::env::set_var("RUST_LOG", "trace");
|
||||
// TODO(nathan): pass the real version here
|
||||
let config = AppFlowyCoreConfig::new(
|
||||
"1.0.0".to_string(),
|
||||
custom_application_path,
|
||||
application_path,
|
||||
device_id,
|
||||
|
55
frontend/appflowy_web/wasm-libs/Cargo.lock
generated
55
frontend/appflowy_web/wasm-libs/Cargo.lock
generated
@ -216,7 +216,7 @@ checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca"
|
||||
[[package]]
|
||||
name = "app-error"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -534,7 +534,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "client-api"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"again",
|
||||
"anyhow",
|
||||
@ -605,7 +605,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
@ -627,7 +627,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-document"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"collab",
|
||||
@ -646,11 +646,12 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bytes",
|
||||
"collab",
|
||||
"getrandom 0.2.12",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"serde_repr",
|
||||
@ -660,12 +661,13 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-folder"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"chrono",
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"getrandom 0.2.12",
|
||||
"parking_lot 0.12.1",
|
||||
"serde",
|
||||
"serde_json",
|
||||
@ -696,7 +698,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-plugins"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-stream",
|
||||
@ -734,11 +736,12 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-user"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"getrandom 0.2.12",
|
||||
"parking_lot 0.12.1",
|
||||
"serde",
|
||||
"serde_json",
|
||||
@ -885,7 +888,7 @@ dependencies = [
|
||||
"cssparser-macros",
|
||||
"dtoa-short",
|
||||
"itoa",
|
||||
"phf 0.11.2",
|
||||
"phf 0.8.0",
|
||||
"smallvec",
|
||||
]
|
||||
|
||||
@ -930,7 +933,7 @@ checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
|
||||
[[package]]
|
||||
name = "database-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -1643,7 +1646,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "gotrue"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"futures-util",
|
||||
@ -1660,7 +1663,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "gotrue-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -1976,7 +1979,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "infra"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"reqwest",
|
||||
@ -2678,7 +2681,7 @@ version = "0.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
|
||||
dependencies = [
|
||||
"phf_macros 0.8.0",
|
||||
"phf_macros",
|
||||
"phf_shared 0.8.0",
|
||||
"proc-macro-hack",
|
||||
]
|
||||
@ -2698,7 +2701,6 @@ version = "0.11.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
|
||||
dependencies = [
|
||||
"phf_macros 0.11.2",
|
||||
"phf_shared 0.11.2",
|
||||
]
|
||||
|
||||
@ -2766,19 +2768,6 @@ dependencies = [
|
||||
"syn 1.0.109",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "phf_macros"
|
||||
version = "0.11.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
|
||||
dependencies = [
|
||||
"phf_generator 0.11.2",
|
||||
"phf_shared 0.11.2",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.48",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "phf_shared"
|
||||
version = "0.8.0"
|
||||
@ -3182,7 +3171,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "realtime-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -3205,7 +3194,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "realtime-protocol"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -3652,7 +3641,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "shared-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -4594,7 +4583,7 @@ checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10"
|
||||
[[package]]
|
||||
name = "websocket"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"futures-channel",
|
||||
"futures-util",
|
||||
@ -4889,4 +4878,4 @@ dependencies = [
|
||||
[[patch.unused]]
|
||||
name = "collab-database"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
|
@ -62,7 +62,7 @@ lto = false
|
||||
# Run the script:
|
||||
# scripts/tool/update_client_api_rev.sh new_rev_id
|
||||
# ⚠️⚠️⚠️️
|
||||
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "69c69f6474eaa531fd822e9353cc5955b98e45eb" }
|
||||
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "199452d3b77a352c03810d4146b39d76bab0313c" }
|
||||
# Please use the following script to update collab.
|
||||
# Working directory: frontend
|
||||
#
|
||||
@ -72,10 +72,10 @@ client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "69c
|
||||
# To switch to the local path, run:
|
||||
# scripts/tool/update_collab_source.sh
|
||||
# ⚠️⚠️⚠️️
|
||||
collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-database = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-plugins = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-user = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-database = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-plugins = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-user = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
|
@ -16,10 +16,10 @@ flowy-user-pub = { workspace = true }
|
||||
strum_macros = "0.25.2"
|
||||
tracing.workspace = true
|
||||
lib-infra = { workspace = true }
|
||||
collab = { workspace = true, features = ["wasm_build", "async-plugin"] }
|
||||
collab = { workspace = true, features = ["async-plugin"] }
|
||||
collab-entity.workspace = true
|
||||
collab-user.workspace = true
|
||||
collab-integrate = { workspace = true, features = ["enable_wasm"] }
|
||||
collab-integrate = { workspace = true }
|
||||
protobuf.workspace = true
|
||||
bytes.workspace = true
|
||||
anyhow.workspace = true
|
||||
|
@ -16,18 +16,18 @@ tracing.workspace = true
|
||||
tracing-core = { version = "0.1.32" }
|
||||
tracing-wasm = "0.2.1"
|
||||
serde.workspace = true
|
||||
collab-integrate = { workspace = true, features = ["enable_wasm"] }
|
||||
collab-integrate = { workspace = true }
|
||||
tokio-stream.workspace = true
|
||||
|
||||
af-user.workspace = true
|
||||
flowy-notification = { workspace = true, features = ["web_ts"] }
|
||||
flowy-user-pub = { workspace = true }
|
||||
flowy-server = { workspace = true, features = ["enable_wasm"] }
|
||||
flowy-server = { workspace = true }
|
||||
flowy-server-pub = { workspace = true }
|
||||
flowy-error = { workspace = true, features = ["impl_from_dispatch_error", "web_ts"] }
|
||||
flowy-document = { workspace = true, features = ["web_ts"] }
|
||||
lib-infra = { workspace = true }
|
||||
collab = { workspace = true, features = ["wasm_build", "async-plugin"] }
|
||||
collab = { workspace = true, features = ["async-plugin"] }
|
||||
web-sys = "0.3"
|
||||
wasm-bindgen-futures.workspace = true
|
||||
uuid.workspace = true
|
||||
|
@ -280,10 +280,12 @@
|
||||
"cloudLocal": "Local",
|
||||
"cloudSupabase": "Supabase",
|
||||
"cloudSupabaseUrl": "Supabase URL",
|
||||
"cloudSupabaseUrlCanNotBeEmpty": "The supabase url can't be empty",
|
||||
"cloudSupabaseAnonKey": "Supabase anon key",
|
||||
"cloudSupabaseAnonKeyCanNotBeEmpty": "The anon key can't be empty if the supabase url is not empty",
|
||||
"cloudSupabaseAnonKeyCanNotBeEmpty": "The anon key can't be empty",
|
||||
"cloudAppFlowy": "AppFlowy Cloud Beta",
|
||||
"cloudAppFlowySelfHost": "AppFlowy Cloud Self-hosted",
|
||||
"appFlowyCloudUrlCanNotBeEmpty": "The cloud url can't be empty",
|
||||
"clickToCopy": "Click to copy",
|
||||
"selfHostStart": "If you don't have a server, please refer to the",
|
||||
"selfHostContent": "document",
|
||||
@ -293,6 +295,7 @@
|
||||
"cloudWSURLHint": "Input the websocket address of your server",
|
||||
"restartApp": "Restart",
|
||||
"restartAppTip": "Restart the application for the changes to take effect. Please note that this might log out your current account",
|
||||
"changeServerTip": "After changing the server, you must click the restart button for the changes to take effect",
|
||||
"enableEncryptPrompt": "Activate encryption to secure your data with this secret. Store it safely; once enabled, it can't be turned off. If lost, your data becomes irretrievable. Click to copy",
|
||||
"inputEncryptPrompt": "Please enter your encryption secret for",
|
||||
"clickToCopySecret": "Click to copy secret",
|
||||
|
58
frontend/rust-lib/Cargo.lock
generated
58
frontend/rust-lib/Cargo.lock
generated
@ -163,7 +163,7 @@ checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca"
|
||||
[[package]]
|
||||
name = "app-error"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -673,7 +673,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "client-api"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"again",
|
||||
"anyhow",
|
||||
@ -744,7 +744,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
@ -766,7 +766,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-database"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
@ -774,6 +774,7 @@ dependencies = [
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"collab-plugins",
|
||||
"getrandom 0.2.10",
|
||||
"js-sys",
|
||||
"lazy_static",
|
||||
"lru",
|
||||
@ -794,7 +795,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-document"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"collab",
|
||||
@ -813,11 +814,12 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bytes",
|
||||
"collab",
|
||||
"getrandom 0.2.10",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"serde_repr",
|
||||
@ -827,12 +829,13 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-folder"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"chrono",
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"getrandom 0.2.10",
|
||||
"parking_lot 0.12.1",
|
||||
"serde",
|
||||
"serde_json",
|
||||
@ -863,7 +866,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-plugins"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-stream",
|
||||
@ -902,11 +905,12 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "collab-user"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=e3620ae820e921955b9c3ca3ffee24aad544f972#e3620ae820e921955b9c3ca3ffee24aad544f972"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d00b477a9b844d86b5caeff573ca395dc5bf7198#d00b477a9b844d86b5caeff573ca395dc5bf7198"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"collab",
|
||||
"collab-entity",
|
||||
"getrandom 0.2.10",
|
||||
"parking_lot 0.12.1",
|
||||
"serde",
|
||||
"serde_json",
|
||||
@ -1098,7 +1102,7 @@ dependencies = [
|
||||
"cssparser-macros",
|
||||
"dtoa-short",
|
||||
"itoa",
|
||||
"phf 0.11.2",
|
||||
"phf 0.8.0",
|
||||
"smallvec",
|
||||
]
|
||||
|
||||
@ -1231,7 +1235,7 @@ checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
|
||||
[[package]]
|
||||
name = "database-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -2400,7 +2404,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "gotrue"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"futures-util",
|
||||
@ -2417,7 +2421,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "gotrue-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -2793,7 +2797,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "infra"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"reqwest",
|
||||
@ -3583,7 +3587,7 @@ version = "0.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
|
||||
dependencies = [
|
||||
"phf_macros 0.8.0",
|
||||
"phf_macros",
|
||||
"phf_shared 0.8.0",
|
||||
"proc-macro-hack",
|
||||
]
|
||||
@ -3603,7 +3607,6 @@ version = "0.11.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
|
||||
dependencies = [
|
||||
"phf_macros 0.11.2",
|
||||
"phf_shared 0.11.2",
|
||||
]
|
||||
|
||||
@ -3671,19 +3674,6 @@ dependencies = [
|
||||
"syn 1.0.109",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "phf_macros"
|
||||
version = "0.11.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
|
||||
dependencies = [
|
||||
"phf_generator 0.11.2",
|
||||
"phf_shared 0.11.2",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.47",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "phf_shared"
|
||||
version = "0.8.0"
|
||||
@ -4237,7 +4227,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "realtime-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -4260,7 +4250,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "realtime-protocol"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
@ -4848,7 +4838,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "shared-entity"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"app-error",
|
||||
@ -6023,7 +6013,7 @@ checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
|
||||
[[package]]
|
||||
name = "websocket"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"futures-channel",
|
||||
"futures-util",
|
||||
@ -6244,7 +6234,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "workspace-template"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=69c69f6474eaa531fd822e9353cc5955b98e45eb#69c69f6474eaa531fd822e9353cc5955b98e45eb"
|
||||
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=199452d3b77a352c03810d4146b39d76bab0313c#199452d3b77a352c03810d4146b39d76bab0313c"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
|
@ -105,7 +105,7 @@ incremental = false
|
||||
# Run the script:
|
||||
# scripts/tool/update_client_api_rev.sh new_rev_id
|
||||
# ⚠️⚠️⚠️️
|
||||
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "69c69f6474eaa531fd822e9353cc5955b98e45eb" }
|
||||
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "199452d3b77a352c03810d4146b39d76bab0313c" }
|
||||
# Please use the following script to update collab.
|
||||
# Working directory: frontend
|
||||
#
|
||||
@ -115,10 +115,10 @@ client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "69c
|
||||
# To switch to the local path, run:
|
||||
# scripts/tool/update_collab_source.sh
|
||||
# ⚠️⚠️⚠️️
|
||||
collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-database = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-plugins = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-user = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "e3620ae820e921955b9c3ca3ffee24aad544f972" }
|
||||
collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-database = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-plugins = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-user = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d00b477a9b844d86b5caeff573ca395dc5bf7198" }
|
||||
|
@ -21,5 +21,4 @@ tokio = { workspace = true, features = ["sync"]}
|
||||
lib-infra = { workspace = true }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
enable_wasm = ["collab-plugins/wasm_build"]
|
||||
default = []
|
@ -10,6 +10,7 @@ use flowy_server_pub::AuthenticatorType;
|
||||
pub struct AppFlowyDartConfiguration {
|
||||
/// The root path of the application
|
||||
pub root: String,
|
||||
pub app_version: String,
|
||||
/// This path will be used to store the user data
|
||||
pub custom_app_path: String,
|
||||
pub origin_app_path: String,
|
||||
|
@ -64,6 +64,7 @@ pub extern "C" fn init_sdk(data: *mut c_char) -> i64 {
|
||||
|
||||
let log_crates = vec!["flowy-ffi".to_string()];
|
||||
let config = AppFlowyCoreConfig::new(
|
||||
configuration.app_version,
|
||||
configuration.custom_app_path,
|
||||
configuration.origin_app_path,
|
||||
configuration.device_id,
|
||||
|
@ -56,4 +56,4 @@ zip = "0.6.6"
|
||||
default = ["supabase_cloud_test"]
|
||||
dart = ["flowy-core/dart"]
|
||||
supabase_cloud_test = []
|
||||
single_thread = ["flowy-core/enable_wasm"]
|
||||
single_thread = []
|
@ -53,14 +53,15 @@ impl EventIntegrationTest {
|
||||
let path = path_buf.to_str().unwrap().to_string();
|
||||
let device_id = uuid::Uuid::new_v4().to_string();
|
||||
|
||||
let config = AppFlowyCoreConfig::new(path.clone(), path, device_id, name).log_filter(
|
||||
"trace",
|
||||
vec![
|
||||
"flowy_test".to_string(),
|
||||
"tokio".to_string(),
|
||||
// "lib_dispatch".to_string(),
|
||||
],
|
||||
);
|
||||
let config = AppFlowyCoreConfig::new("".to_string(), path.clone(), path, device_id, name)
|
||||
.log_filter(
|
||||
"trace",
|
||||
vec![
|
||||
"flowy_test".to_string(),
|
||||
"tokio".to_string(),
|
||||
// "lib_dispatch".to_string(),
|
||||
],
|
||||
);
|
||||
|
||||
let inner = init_core(config).await;
|
||||
let notification_sender = TestNotificationSender::new();
|
||||
|
@ -66,4 +66,3 @@ ts = [
|
||||
]
|
||||
rev-sqlite = ["flowy-user/rev-sqlite"]
|
||||
openssl_vendored = ["flowy-sqlite/openssl_vendored"]
|
||||
enable_wasm = ["collab-integrate/enable_wasm"]
|
||||
|
@ -14,6 +14,7 @@ use crate::integrate::log::create_log_filter;
|
||||
#[derive(Clone)]
|
||||
pub struct AppFlowyCoreConfig {
|
||||
/// Different `AppFlowyCoreConfig` instance should have different name
|
||||
pub(crate) app_version: String,
|
||||
pub(crate) name: String,
|
||||
pub(crate) device_id: String,
|
||||
/// Used to store the user data
|
||||
@ -30,6 +31,7 @@ pub struct AppFlowyCoreConfig {
|
||||
impl fmt::Debug for AppFlowyCoreConfig {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
let mut debug = f.debug_struct("AppFlowy Configuration");
|
||||
debug.field("app_version", &self.app_version);
|
||||
debug.field("storage_path", &self.storage_path);
|
||||
debug.field("application_path", &self.application_path);
|
||||
if let Some(config) = &self.cloud_config {
|
||||
@ -71,6 +73,7 @@ fn make_user_data_folder(root: &str, url: &str) -> String {
|
||||
|
||||
impl AppFlowyCoreConfig {
|
||||
pub fn new(
|
||||
app_version: String,
|
||||
custom_application_path: String,
|
||||
application_path: String,
|
||||
device_id: String,
|
||||
@ -89,6 +92,7 @@ impl AppFlowyCoreConfig {
|
||||
};
|
||||
|
||||
AppFlowyCoreConfig {
|
||||
app_version,
|
||||
name,
|
||||
storage_path,
|
||||
application_path,
|
||||
|
@ -55,5 +55,4 @@ flowy-codegen.workspace = true
|
||||
|
||||
[features]
|
||||
dart = ["flowy-codegen/dart", "flowy-notification/dart"]
|
||||
ts = ["flowy-codegen/ts", "flowy-notification/tauri_ts"]
|
||||
enable_wasm = ["collab-plugins/wasm_build"]
|
||||
ts = ["flowy-codegen/ts", "flowy-notification/tauri_ts"]
|
@ -54,8 +54,5 @@ dart = ["flowy-codegen/dart"]
|
||||
tauri_ts = ["flowy-codegen/ts"]
|
||||
web_ts = [
|
||||
"flowy-codegen/ts",
|
||||
"collab-plugins/wasm_build",
|
||||
"collab/wasm_build",
|
||||
"collab-document/wasm_build",
|
||||
]
|
||||
|
||||
|
@ -17,7 +17,4 @@ anyhow.workspace = true
|
||||
base64 = "0.21.2"
|
||||
|
||||
[target.'cfg(target_arch = "wasm32")'.dependencies]
|
||||
getrandom = { version = "0.2", features = ["js"]}
|
||||
|
||||
[features]
|
||||
enable_wasm = []
|
||||
getrandom = { version = "0.2", features = ["js"]}
|
@ -40,4 +40,3 @@ flowy-codegen.workspace = true
|
||||
dart = ["flowy-codegen/dart", "flowy-notification/dart"]
|
||||
ts = ["flowy-codegen/ts", "flowy-notification/tauri_ts"]
|
||||
test_helper = []
|
||||
enable_wasm = ["collab-plugins/wasm_build"]
|
||||
|
@ -58,5 +58,4 @@ serde_json.workspace = true
|
||||
client-api = { version = "0.1.0" }
|
||||
|
||||
[features]
|
||||
enable_wasm = ["collab/async-plugin"]
|
||||
enable_supabase = ["collab-plugins/postgres_plugin"]
|
@ -20,8 +20,4 @@ flowy-error = { workspace = true, features = ["impl_from_reqwest"] }
|
||||
mime = "0.3.17"
|
||||
tokio = { workspace = true, features = ["sync", "io-util"]}
|
||||
tracing.workspace = true
|
||||
fxhash = "0.2.1"
|
||||
|
||||
|
||||
[features]
|
||||
enable_wasm = []
|
||||
fxhash = "0.2.1"
|
@ -21,7 +21,3 @@ tokio-stream = "0.1.14"
|
||||
flowy-folder-pub.workspace = true
|
||||
tracing.workspace = true
|
||||
base64 = "0.21"
|
||||
|
||||
|
||||
[features]
|
||||
enable_wasm = []
|
@ -497,7 +497,7 @@ pub async fn update_network_state_handler(
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[tracing::instrument(level = "debug", skip_all, err)]
|
||||
#[tracing::instrument(level = "debug", skip_all)]
|
||||
pub async fn get_anon_user_handler(
|
||||
manager: AFPluginState<Weak<UserManager>>,
|
||||
) -> DataResult<UserProfilePB, FlowyError> {
|
||||
|
@ -12,7 +12,7 @@ script = [
|
||||
echo "🔥🔥🔥 Building $crate with wasm-pack..."
|
||||
cd "$BASE_DIR/rust-lib/$crate" || { echo "Failed to enter directory $crate"; exit 1; }
|
||||
|
||||
wasm-pack build --features="enable_wasm" || { echo "Build failed for $crate"; exit 1; }
|
||||
wasm-pack build || { echo "Build failed for $crate"; exit 1; }
|
||||
done
|
||||
"""
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user