feat(mobile): new upload (#18726)

This commit is contained in:
Alex 2025-07-18 23:58:53 -05:00 committed by GitHub
parent f929dc0816
commit fafb88d31c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
27 changed files with 1733 additions and 102 deletions

View file

@ -176,16 +176,14 @@ class WebsocketNotifier extends StateNotifier<WebsocketState> {
);
});
socket.on('on_upload_success', _handleOnUploadSuccess);
if (!Store.isBetaTimelineEnabled) {
startListeningToOldEvents();
} else {
startListeningToBetaEvents();
}
socket.on('on_config_update', _handleOnConfigUpdate);
socket.on('on_asset_delete', _handleOnAssetDelete);
socket.on('on_asset_trash', _handleOnAssetTrash);
socket.on('on_asset_restore', _handleServerUpdates);
socket.on('on_asset_update', _handleServerUpdates);
socket.on('on_asset_stack_update', _handleServerUpdates);
socket.on('on_asset_hidden', _handleOnAssetHidden);
socket.on('on_new_release', _handleReleaseUpdates);
socket.on('AssetUploadReadyV1', _handleSyncAssetUploadReady);
} catch (e) {
debugPrint("[WEBSOCKET] Catch Websocket Error - ${e.toString()}");
}
@ -213,6 +211,34 @@ class WebsocketNotifier extends StateNotifier<WebsocketState> {
state.socket?.off(eventName);
}
void stopListenToOldEvents() {
state.socket?.off('on_upload_success');
state.socket?.off('on_asset_delete');
state.socket?.off('on_asset_trash');
state.socket?.off('on_asset_restore');
state.socket?.off('on_asset_update');
state.socket?.off('on_asset_stack_update');
state.socket?.off('on_asset_hidden');
}
void startListeningToOldEvents() {
state.socket?.on('on_upload_success', _handleOnUploadSuccess);
state.socket?.on('on_asset_delete', _handleOnAssetDelete);
state.socket?.on('on_asset_trash', _handleOnAssetTrash);
state.socket?.on('on_asset_restore', _handleServerUpdates);
state.socket?.on('on_asset_update', _handleServerUpdates);
state.socket?.on('on_asset_stack_update', _handleServerUpdates);
state.socket?.on('on_asset_hidden', _handleOnAssetHidden);
}
void stopListeningToBetaEvents() {
state.socket?.off('AssetUploadReadyV1');
}
void startListeningToBetaEvents() {
state.socket?.on('AssetUploadReadyV1', _handleSyncAssetUploadReady);
}
void listenUploadEvent() {
debugPrint("Start listening to event on_upload_success");
state.socket?.on('on_upload_success', _handleOnUploadSuccess);