39 lines
1.6 KiB
TypeScript
39 lines
1.6 KiB
TypeScript
import type { RunAssistantAddressLaneAttemptRuntimeInput } from "./assistantAddressLaneAttemptRuntimeAdapter";
|
|
|
|
export function resolveAssistantAddressLaneAttemptFollowupContext(
|
|
carryMeta: RunAssistantAddressLaneAttemptRuntimeInput["carryMeta"]
|
|
): Record<string, unknown> | null {
|
|
return carryMeta?.followupContext && typeof carryMeta.followupContext === "object"
|
|
? (carryMeta.followupContext as Record<string, unknown>)
|
|
: null;
|
|
}
|
|
|
|
export interface BuildAssistantAddressLaneAttemptQueryOptionsInput {
|
|
analysisDateHint: RunAssistantAddressLaneAttemptRuntimeInput["analysisDateHint"];
|
|
scopedFollowupContext: Record<string, unknown> | null;
|
|
llmSemanticHints: RunAssistantAddressLaneAttemptRuntimeInput["llmSemanticHints"];
|
|
activeOrganization: RunAssistantAddressLaneAttemptRuntimeInput["activeOrganization"];
|
|
knownOrganizations: RunAssistantAddressLaneAttemptRuntimeInput["knownOrganizations"];
|
|
}
|
|
|
|
export function buildAssistantAddressLaneAttemptQueryOptions(
|
|
input: BuildAssistantAddressLaneAttemptQueryOptionsInput
|
|
): Parameters<RunAssistantAddressLaneAttemptRuntimeInput["runAddressQueryTryHandle"]>[1] {
|
|
const base = {
|
|
analysisDateHint: input.analysisDateHint
|
|
} as Parameters<RunAssistantAddressLaneAttemptRuntimeInput["runAddressQueryTryHandle"]>[1];
|
|
if (input.scopedFollowupContext) {
|
|
base.followupContext = input.scopedFollowupContext;
|
|
}
|
|
if (input.llmSemanticHints) {
|
|
base.llmSemanticHints = input.llmSemanticHints;
|
|
}
|
|
if (input.activeOrganization) {
|
|
base.activeOrganization = input.activeOrganization;
|
|
}
|
|
if (input.knownOrganizations.length > 0) {
|
|
base.knownOrganizations = input.knownOrganizations;
|
|
}
|
|
return base;
|
|
}
|