1
This commit is contained in:
@@ -305,6 +305,7 @@ pub struct BigFishAssetGenerateInput {
|
||||
pub asset_kind: BigFishAssetKind,
|
||||
pub level: Option<u32>,
|
||||
pub motion_key: Option<String>,
|
||||
pub asset_url: Option<String>,
|
||||
pub generated_at_micros: i64,
|
||||
}
|
||||
|
||||
@@ -593,12 +594,16 @@ pub fn build_generated_asset_slot(
|
||||
asset_kind: BigFishAssetKind,
|
||||
level: Option<u32>,
|
||||
motion_key: Option<String>,
|
||||
asset_url: Option<String>,
|
||||
updated_at_micros: i64,
|
||||
) -> Result<BigFishAssetSlotSnapshot, BigFishFieldError> {
|
||||
let session_id =
|
||||
normalize_required_string(session_id).ok_or(BigFishFieldError::MissingSessionId)?;
|
||||
let prompt_snapshot = build_asset_prompt_snapshot(draft, asset_kind, level, motion_key.as_deref())?;
|
||||
let prompt_snapshot =
|
||||
build_asset_prompt_snapshot(draft, asset_kind, level, motion_key.as_deref())?;
|
||||
let slot_id = build_asset_slot_id(&session_id, asset_kind, level, motion_key.as_deref());
|
||||
let resolved_asset_url = normalize_required_string(asset_url.as_deref().unwrap_or_default())
|
||||
.unwrap_or_else(|| build_placeholder_asset_url(asset_kind, level, updated_at_micros));
|
||||
|
||||
Ok(BigFishAssetSlotSnapshot {
|
||||
slot_id,
|
||||
@@ -607,7 +612,7 @@ pub fn build_generated_asset_slot(
|
||||
level,
|
||||
motion_key,
|
||||
status: BigFishAssetStatus::Ready,
|
||||
asset_url: Some(build_placeholder_asset_url(asset_kind, level, updated_at_micros)),
|
||||
asset_url: Some(resolved_asset_url),
|
||||
prompt_snapshot,
|
||||
updated_at_micros,
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user