推进 SpacetimeDB adapter 与 client 收口

This commit is contained in:
2026-04-29 16:53:54 +08:00
parent f82775b852
commit 62934b0809
17 changed files with 1023 additions and 597 deletions

View File

@@ -14,7 +14,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_profile_list_result);
send_once(&sender, mapped);
},
@@ -38,7 +38,7 @@ impl SpacetimeClient {
.procedures()
.get_custom_world_library_detail_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_library_detail_result);
send_once(&sender, mapped);
});
@@ -57,7 +57,7 @@ impl SpacetimeClient {
.procedures()
.upsert_custom_world_profile_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_library_mutation_result);
send_once(&sender, mapped);
});
@@ -88,7 +88,7 @@ impl SpacetimeClient {
.procedures()
.publish_custom_world_profile_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_library_mutation_result);
send_once(&sender, mapped);
});
@@ -117,7 +117,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_library_mutation_result);
send_once(&sender, mapped);
},
@@ -143,7 +143,7 @@ impl SpacetimeClient {
.procedures()
.delete_custom_world_profile_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_profile_list_result);
send_once(&sender, mapped);
});
@@ -159,7 +159,7 @@ impl SpacetimeClient {
.procedures()
.list_custom_world_gallery_entries_then(move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_gallery_list_result);
send_once(&sender, mapped);
});
@@ -182,7 +182,7 @@ impl SpacetimeClient {
.procedures()
.get_custom_world_gallery_detail_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_library_mutation_result);
send_once(&sender, mapped);
});
@@ -201,7 +201,7 @@ impl SpacetimeClient {
.procedures()
.get_custom_world_gallery_detail_by_code_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_library_mutation_result);
send_once(&sender, mapped);
});
@@ -220,7 +220,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_publish_world_result);
send_once(&sender, mapped);
},
@@ -259,7 +259,7 @@ impl SpacetimeClient {
.procedures()
.create_custom_world_agent_session_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_agent_session_procedure_result);
send_once(&sender, mapped);
});
@@ -282,7 +282,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_agent_session_procedure_result);
send_once(&sender, mapped);
},
@@ -302,7 +302,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_works_list_result);
send_once(&sender, mapped);
},
@@ -326,7 +326,7 @@ impl SpacetimeClient {
.procedures()
.delete_custom_world_agent_session_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_works_list_result);
send_once(&sender, mapped);
});
@@ -351,7 +351,7 @@ impl SpacetimeClient {
.procedures()
.get_custom_world_agent_card_detail_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_draft_card_detail_result);
send_once(&sender, mapped);
});
@@ -377,7 +377,7 @@ impl SpacetimeClient {
.procedures()
.execute_custom_world_agent_action_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_agent_action_execute_result);
send_once(&sender, mapped);
});
@@ -403,7 +403,7 @@ impl SpacetimeClient {
.procedures()
.submit_custom_world_agent_message_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_agent_operation_procedure_result);
send_once(&sender, mapped);
});
@@ -451,7 +451,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_agent_operation_procedure_result);
send_once(&sender, mapped);
},
@@ -486,7 +486,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_agent_operation_procedure_result);
send_once(&sender, mapped);
},
@@ -512,7 +512,7 @@ impl SpacetimeClient {
.procedures()
.get_custom_world_agent_operation_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_custom_world_agent_operation_procedure_result);
send_once(&sender, mapped);
});

View File

@@ -575,18 +575,12 @@ pub(crate) fn map_runtime_setting_procedure_result(
result: RuntimeSettingProcedureResult,
) -> Result<RuntimeSettingsRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 runtime settings 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("runtime settings 快照"))?;
Ok(build_runtime_setting_record(map_runtime_setting_snapshot(
snapshot,
@@ -620,16 +614,12 @@ pub(crate) fn map_auth_store_snapshot_import_procedure_result(
result: AuthStoreSnapshotImportProcedureResult,
) -> Result<AuthStoreSnapshotImportRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure ??????".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let record = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure("SpacetimeDB procedure ???????".to_string())
})?;
let record = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("认证快照导入结果"))?;
Ok(AuthStoreSnapshotImportRecord {
imported_user_count: record.imported_user_count,
@@ -642,11 +632,7 @@ pub(crate) fn map_runtime_browse_history_procedure_result(
result: RuntimeBrowseHistoryProcedureResult,
) -> Result<Vec<RuntimeBrowseHistoryRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
Ok(result
@@ -662,18 +648,12 @@ pub(crate) fn map_runtime_profile_dashboard_procedure_result(
result: RuntimeProfileDashboardProcedureResult,
) -> Result<RuntimeProfileDashboardRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 profile dashboard 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("profile dashboard 快照"))?;
Ok(build_runtime_profile_dashboard_record(
map_runtime_profile_dashboard_snapshot(snapshot),
@@ -684,11 +664,7 @@ pub(crate) fn map_runtime_profile_wallet_ledger_procedure_result(
result: RuntimeProfileWalletLedgerProcedureResult,
) -> Result<Vec<RuntimeProfileWalletLedgerEntryRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
Ok(result
@@ -706,18 +682,12 @@ pub(crate) fn map_runtime_profile_wallet_adjustment_procedure_result(
result: RuntimeProfileWalletAdjustmentProcedureResult,
) -> Result<RuntimeProfileDashboardRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 profile dashboard 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("profile dashboard 快照"))?;
Ok(build_runtime_profile_dashboard_record(
map_runtime_profile_dashboard_snapshot(snapshot),
@@ -728,18 +698,12 @@ pub(crate) fn map_runtime_profile_recharge_center_procedure_result(
result: RuntimeProfileRechargeCenterProcedureResult,
) -> Result<RuntimeProfileRechargeCenterRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 profile recharge center 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("profile recharge center 快照"))?;
Ok(build_runtime_profile_recharge_center_record(
map_runtime_profile_recharge_center_snapshot(snapshot),
@@ -756,23 +720,15 @@ pub(crate) fn map_runtime_profile_recharge_order_procedure_result(
SpacetimeClientError,
> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let center = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 profile recharge center 快照".to_string(),
)
})?;
let order = result.order.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 profile recharge order 快照".to_string(),
)
})?;
let center = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("profile recharge center 快照"))?;
let order = result
.order
.ok_or_else(|| SpacetimeClientError::missing_snapshot("profile recharge order 快照"))?;
Ok((
build_runtime_profile_recharge_center_record(map_runtime_profile_recharge_center_snapshot(
@@ -788,18 +744,12 @@ pub(crate) fn map_runtime_referral_invite_center_procedure_result(
result: RuntimeReferralInviteCenterProcedureResult,
) -> Result<RuntimeReferralInviteCenterRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 referral invite center 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("referral invite center 快照"))?;
Ok(build_runtime_referral_invite_center_record(
map_runtime_referral_invite_center_snapshot(snapshot),
@@ -810,18 +760,12 @@ pub(crate) fn map_runtime_referral_redeem_procedure_result(
result: RuntimeReferralRedeemProcedureResult,
) -> Result<RuntimeReferralRedeemRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 referral redeem 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("referral redeem 快照"))?;
Ok(build_runtime_referral_redeem_record(
map_runtime_referral_redeem_snapshot(snapshot),
@@ -832,18 +776,12 @@ pub(crate) fn map_runtime_profile_reward_code_redeem_procedure_result(
result: RuntimeProfileRewardCodeRedeemProcedureResult,
) -> Result<RuntimeProfileRewardCodeRedeemRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 reward redeem 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("reward redeem 快照"))?;
Ok(build_runtime_profile_reward_code_redeem_record(
map_runtime_profile_reward_code_redeem_snapshot(snapshot),
@@ -854,16 +792,12 @@ pub(crate) fn map_runtime_profile_redeem_code_admin_procedure_result(
result: RuntimeProfileRedeemCodeAdminProcedureResult,
) -> Result<RuntimeProfileRedeemCodeRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure("SpacetimeDB procedure 未返回 redeem code 快照".to_string())
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("redeem code 快照"))?;
Ok(build_runtime_profile_redeem_code_record(
map_runtime_profile_redeem_code_snapshot(snapshot),
@@ -874,18 +808,12 @@ pub(crate) fn map_runtime_profile_play_stats_procedure_result(
result: RuntimeProfilePlayStatsProcedureResult,
) -> Result<RuntimeProfilePlayStatsRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let snapshot = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 profile play stats 快照".to_string(),
)
})?;
let snapshot = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("profile play stats 快照"))?;
Ok(build_runtime_profile_play_stats_record(
map_runtime_profile_play_stats_snapshot(snapshot),
@@ -896,11 +824,7 @@ pub(crate) fn map_runtime_snapshot_procedure_result(
result: RuntimeSnapshotProcedureResult,
) -> Result<Option<RuntimeSnapshotRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
result
@@ -915,11 +839,8 @@ pub(crate) fn map_runtime_snapshot_procedure_result(
pub(crate) fn map_runtime_snapshot_required_procedure_result(
result: RuntimeSnapshotProcedureResult,
) -> Result<RuntimeSnapshotRecord, SpacetimeClientError> {
map_runtime_snapshot_procedure_result(result)?.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 runtime snapshot 快照".to_string(),
)
})
map_runtime_snapshot_procedure_result(result)?
.ok_or_else(|| SpacetimeClientError::missing_snapshot("runtime snapshot 快照"))
}
pub(crate) fn map_runtime_snapshot_delete_procedure_result(
@@ -932,11 +853,7 @@ pub(crate) fn map_runtime_profile_save_archive_list_procedure_result(
result: RuntimeProfileSaveArchiveProcedureResult,
) -> Result<Vec<RuntimeProfileSaveArchiveRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
result
@@ -955,23 +872,15 @@ pub(crate) fn map_runtime_profile_save_archive_resume_procedure_result(
result: RuntimeProfileSaveArchiveProcedureResult,
) -> Result<(RuntimeProfileSaveArchiveRecord, RuntimeSnapshotRecord), SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let archive = result.record.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 save archive 快照".to_string(),
)
})?;
let snapshot = result.current_snapshot.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回恢复后的 runtime snapshot".to_string(),
)
})?;
let archive = result
.record
.ok_or_else(|| SpacetimeClientError::missing_snapshot("save archive 快照"))?;
let snapshot = result
.current_snapshot
.ok_or_else(|| SpacetimeClientError::missing_snapshot("恢复后的 runtime snapshot"))?;
Ok((
build_runtime_profile_save_archive_record(map_runtime_profile_save_archive_snapshot(
@@ -1004,11 +913,7 @@ pub(crate) fn map_custom_world_profile_list_result(
result: CustomWorldProfileListResult,
) -> Result<Vec<CustomWorldLibraryEntryRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
result
@@ -1022,11 +927,7 @@ pub(crate) fn map_custom_world_library_detail_result(
result: CustomWorldLibraryMutationResult,
) -> Result<CustomWorldLibraryMutationRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let entry = result
@@ -1048,11 +949,7 @@ pub(crate) fn map_custom_world_gallery_list_result(
result: CustomWorldGalleryListResult,
) -> Result<Vec<CustomWorldGalleryEntryRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
Ok(result
@@ -1066,18 +963,12 @@ pub(crate) fn map_custom_world_library_mutation_result(
result: CustomWorldLibraryMutationResult,
) -> Result<CustomWorldLibraryMutationRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let entry = result
.entry
.ok_or_else(|| {
SpacetimeClientError::Procedure("SpacetimeDB 未返回 custom world entry".to_string())
})
.ok_or_else(|| SpacetimeClientError::missing_snapshot("custom world entry"))
.and_then(map_custom_world_library_entry_from_profile_snapshot)?;
let gallery_entry = result
.gallery_entry
@@ -1094,26 +985,16 @@ pub(crate) fn map_custom_world_publish_world_result(
result: CustomWorldPublishWorldResult,
) -> Result<CustomWorldPublishWorldRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let compiled_record = result
.compiled_record
.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 published profile compile 快照".to_string(),
)
})
.ok_or_else(|| SpacetimeClientError::missing_snapshot("published profile compile 快照"))
.and_then(map_custom_world_published_profile_compile_snapshot)?;
let entry = result
.entry
.ok_or_else(|| {
SpacetimeClientError::Procedure("SpacetimeDB 未返回 custom world entry".to_string())
})
.ok_or_else(|| SpacetimeClientError::missing_snapshot("custom world entry"))
.and_then(map_custom_world_library_entry_from_profile_snapshot)?;
let gallery_entry = result
.gallery_entry
@@ -1121,9 +1002,7 @@ pub(crate) fn map_custom_world_publish_world_result(
.transpose()?;
let session_stage = result
.session_stage
.ok_or_else(|| {
SpacetimeClientError::Procedure("SpacetimeDB 未返回 session stage".to_string())
})
.ok_or_else(|| SpacetimeClientError::missing_snapshot("session stage"))
.map(map_rpg_agent_stage)?;
Ok(CustomWorldPublishWorldRecord {
@@ -1138,18 +1017,12 @@ pub(crate) fn map_custom_world_agent_session_procedure_result(
result: CustomWorldAgentSessionProcedureResult,
) -> Result<CustomWorldAgentSessionRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let session = result.session.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 custom world agent session 快照".to_string(),
)
})?;
let session = result
.session
.ok_or_else(|| SpacetimeClientError::missing_snapshot("custom world agent session 快照"))?;
map_custom_world_agent_session_snapshot(session)
}
@@ -1158,17 +1031,11 @@ pub(crate) fn map_custom_world_agent_operation_procedure_result(
result: CustomWorldAgentOperationProcedureResult,
) -> Result<CustomWorldAgentOperationRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let operation = result.operation.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 custom world agent operation 快照".to_string(),
)
SpacetimeClientError::missing_snapshot("custom world agent operation 快照")
})?;
Ok(map_custom_world_agent_operation_snapshot(operation))
@@ -1178,11 +1045,7 @@ pub(crate) fn map_custom_world_works_list_result(
result: CustomWorldWorksListResult,
) -> Result<Vec<CustomWorldWorkSummaryRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
result
@@ -1196,18 +1059,12 @@ pub(crate) fn map_custom_world_draft_card_detail_result(
result: CustomWorldDraftCardDetailResult,
) -> Result<CustomWorldDraftCardDetailRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let card = result.card.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 custom world card detail 快照".to_string(),
)
})?;
let card = result
.card
.ok_or_else(|| SpacetimeClientError::missing_snapshot("custom world card detail 快照"))?;
map_custom_world_draft_card_detail_snapshot(card)
}
@@ -1216,17 +1073,11 @@ pub(crate) fn map_custom_world_agent_action_execute_result(
result: CustomWorldAgentActionExecuteResult,
) -> Result<CustomWorldAgentActionExecuteRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let operation = result.operation.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 custom world action operation 快照".to_string(),
)
SpacetimeClientError::missing_snapshot("custom world action operation 快照")
})?;
Ok(CustomWorldAgentActionExecuteRecord {
@@ -1238,18 +1089,12 @@ pub(crate) fn map_puzzle_agent_session_procedure_result(
result: PuzzleAgentSessionProcedureResult,
) -> Result<PuzzleAgentSessionRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let session_json = result.session_json.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 puzzle agent session 快照".to_string(),
)
})?;
let session_json = result
.session_json
.ok_or_else(|| SpacetimeClientError::missing_snapshot("puzzle agent session 快照"))?;
let session: DomainPuzzleAgentSessionSnapshot =
serde_json::from_str(&session_json).map_err(|error| {
SpacetimeClientError::Runtime(format!("puzzle agent session_json 非法: {error}"))
@@ -1261,16 +1106,12 @@ pub(crate) fn map_puzzle_work_procedure_result(
result: PuzzleWorkProcedureResult,
) -> Result<PuzzleWorkProfileRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let item_json = result.item_json.ok_or_else(|| {
SpacetimeClientError::Procedure("SpacetimeDB procedure 未返回 puzzle work 快照".to_string())
})?;
let item_json = result
.item_json
.ok_or_else(|| SpacetimeClientError::missing_snapshot("puzzle work 快照"))?;
let item: DomainPuzzleWorkProfile = serde_json::from_str(&item_json).map_err(|error| {
SpacetimeClientError::Runtime(format!("puzzle work item_json 非法: {error}"))
})?;
@@ -1281,18 +1122,12 @@ pub(crate) fn map_puzzle_works_procedure_result(
result: PuzzleWorksProcedureResult,
) -> Result<Vec<PuzzleWorkProfileRecord>, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let items_json = result.items_json.ok_or_else(|| {
SpacetimeClientError::Procedure(
"SpacetimeDB procedure 未返回 puzzle works 快照".to_string(),
)
})?;
let items_json = result
.items_json
.ok_or_else(|| SpacetimeClientError::missing_snapshot("puzzle works 快照"))?;
let items: Vec<DomainPuzzleWorkProfile> =
serde_json::from_str(&items_json).map_err(|error| {
SpacetimeClientError::Runtime(format!("puzzle works items_json 非法: {error}"))
@@ -1304,16 +1139,12 @@ pub(crate) fn map_puzzle_run_procedure_result(
result: PuzzleRunProcedureResult,
) -> Result<PuzzleRunRecord, SpacetimeClientError> {
if !result.ok {
return Err(SpacetimeClientError::Procedure(
result
.error_message
.unwrap_or_else(|| "SpacetimeDB procedure 返回未知错误".to_string()),
));
return Err(SpacetimeClientError::procedure_failed(result.error_message));
}
let run_json = result.run_json.ok_or_else(|| {
SpacetimeClientError::Procedure("SpacetimeDB procedure 未返回 puzzle run 快照".to_string())
})?;
let run_json = result
.run_json
.ok_or_else(|| SpacetimeClientError::missing_snapshot("puzzle run 快照"))?;
let run: DomainPuzzleRunSnapshot = serde_json::from_str(&run_json).map_err(|error| {
SpacetimeClientError::Runtime(format!("puzzle run run_json 非法: {error}"))
})?;
@@ -3214,7 +3045,7 @@ pub(crate) fn parse_big_fish_creation_stage(
"ready_to_publish" => Ok(BigFishCreationStage::ReadyToPublish),
"published" => Ok(BigFishCreationStage::Published),
other => Err(SpacetimeClientError::Runtime(format!(
"big fish creation stage `{other}` ??????"
"big fish creation stage `{other}` 当前尚未支持"
))),
}
}

View File

@@ -21,7 +21,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_agent_session_procedure_result);
send_once(&sender, mapped);
},
@@ -45,7 +45,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_agent_session_procedure_result);
send_once(&sender, mapped);
},
@@ -71,7 +71,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_agent_session_procedure_result);
send_once(&sender, mapped);
},
@@ -101,7 +101,7 @@ impl SpacetimeClient {
.procedures()
.finalize_puzzle_agent_message_turn_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_agent_session_procedure_result);
send_once(&sender, mapped);
});
@@ -126,7 +126,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_agent_session_procedure_result);
send_once(&sender, mapped);
},
@@ -151,7 +151,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_agent_session_procedure_result);
send_once(&sender, mapped);
},
@@ -176,7 +176,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_agent_session_procedure_result);
send_once(&sender, mapped);
},
@@ -206,7 +206,7 @@ impl SpacetimeClient {
.procedures()
.publish_puzzle_work_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_work_procedure_result);
send_once(&sender, mapped);
});
@@ -225,7 +225,7 @@ impl SpacetimeClient {
.procedures()
.list_puzzle_works_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_works_procedure_result);
send_once(&sender, mapped);
});
@@ -244,7 +244,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_work_procedure_result);
send_once(&sender, mapped);
},
@@ -273,7 +273,7 @@ impl SpacetimeClient {
.procedures()
.update_puzzle_work_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_work_procedure_result);
send_once(&sender, mapped);
});
@@ -296,7 +296,7 @@ impl SpacetimeClient {
.procedures()
.delete_puzzle_work_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_works_procedure_result);
send_once(&sender, mapped);
});
@@ -312,7 +312,7 @@ impl SpacetimeClient {
.procedures()
.list_puzzle_gallery_then(move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_works_procedure_result);
send_once(&sender, mapped);
});
@@ -331,7 +331,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_work_procedure_result);
send_once(&sender, mapped);
},
@@ -356,7 +356,7 @@ impl SpacetimeClient {
.procedures()
.start_puzzle_run_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_run_procedure_result);
send_once(&sender, mapped);
});
@@ -379,7 +379,7 @@ impl SpacetimeClient {
.procedures()
.get_puzzle_run_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_run_procedure_result);
send_once(&sender, mapped);
});
@@ -404,7 +404,7 @@ impl SpacetimeClient {
.procedures()
.swap_puzzle_pieces_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_run_procedure_result);
send_once(&sender, mapped);
});
@@ -430,7 +430,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_run_procedure_result);
send_once(&sender, mapped);
},
@@ -454,7 +454,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_run_procedure_result);
send_once(&sender, mapped);
},
@@ -482,7 +482,7 @@ impl SpacetimeClient {
.procedures()
.submit_puzzle_leaderboard_entry_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_puzzle_run_procedure_result);
send_once(&sender, mapped);
});

View File

@@ -14,7 +14,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_setting_procedure_result);
send_once(&sender, mapped);
},
@@ -36,7 +36,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_browse_history_procedure_result);
send_once(&sender, mapped);
},
@@ -58,7 +58,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_dashboard_procedure_result);
send_once(&sender, mapped);
},
@@ -80,7 +80,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_wallet_ledger_procedure_result);
send_once(&sender, mapped);
},
@@ -112,7 +112,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_wallet_adjustment_procedure_result);
send_once(&sender, mapped);
},
@@ -142,7 +142,7 @@ impl SpacetimeClient {
.procedures()
.refund_profile_wallet_points_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_wallet_adjustment_procedure_result);
send_once(&sender, mapped);
});
@@ -163,7 +163,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_recharge_center_procedure_result);
send_once(&sender, mapped);
},
@@ -201,7 +201,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_recharge_order_procedure_result);
send_once(&sender, mapped);
},
@@ -223,7 +223,7 @@ impl SpacetimeClient {
.procedures()
.get_profile_referral_invite_center_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_referral_invite_center_procedure_result);
send_once(&sender, mapped);
});
@@ -247,7 +247,7 @@ impl SpacetimeClient {
.procedures()
.redeem_profile_referral_invite_code_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_referral_redeem_procedure_result);
send_once(&sender, mapped);
});
@@ -271,7 +271,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_reward_code_redeem_procedure_result);
send_once(&sender, mapped);
},
@@ -311,7 +311,7 @@ impl SpacetimeClient {
.procedures()
.admin_upsert_profile_redeem_code_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_redeem_code_admin_procedure_result);
send_once(&sender, mapped);
});
@@ -338,7 +338,7 @@ impl SpacetimeClient {
.procedures()
.admin_disable_profile_redeem_code_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_redeem_code_admin_procedure_result);
send_once(&sender, mapped);
});
@@ -359,7 +359,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_play_stats_procedure_result);
send_once(&sender, mapped);
},
@@ -381,7 +381,7 @@ impl SpacetimeClient {
.procedures()
.get_runtime_snapshot_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_snapshot_procedure_result);
send_once(&sender, mapped);
});
@@ -414,7 +414,7 @@ impl SpacetimeClient {
.procedures()
.upsert_runtime_snapshot_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_snapshot_required_procedure_result);
send_once(&sender, mapped);
});
@@ -435,7 +435,7 @@ impl SpacetimeClient {
.procedures()
.delete_runtime_snapshot_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_snapshot_delete_procedure_result);
send_once(&sender, mapped);
});
@@ -456,7 +456,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_save_archive_list_procedure_result);
send_once(&sender, mapped);
},
@@ -480,7 +480,7 @@ impl SpacetimeClient {
.procedures()
.resume_profile_save_archive_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_profile_save_archive_resume_procedure_result);
send_once(&sender, mapped);
});
@@ -509,7 +509,7 @@ impl SpacetimeClient {
.procedures()
.upsert_runtime_setting_and_return_then(procedure_input, move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_setting_procedure_result);
send_once(&sender, mapped);
});
@@ -535,7 +535,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_browse_history_procedure_result);
send_once(&sender, mapped);
},
@@ -559,7 +559,7 @@ impl SpacetimeClient {
procedure_input,
move |_, result| {
let mapped = result
.map_err(|error| SpacetimeClientError::Procedure(error.to_string()))
.map_err(SpacetimeClientError::from_sdk_error)
.and_then(map_runtime_browse_history_procedure_result);
send_once(&sender, mapped);
},