diff --git a/backend/.gitignore b/backend/.gitignore index c76baa67..1a31d53d 100644 --- a/backend/.gitignore +++ b/backend/.gitignore @@ -7,3 +7,6 @@ __pycache__/ # Generated on demand from uv.lock (single source of truth is pyproject.toml + uv.lock). requirements.txt requirements-dev.txt + +# Generated for orval input (avoid needing a running backend/DB). +openapi.json diff --git a/backend/app/api/agent.py b/backend/app/api/agent.py index 4c47f342..5c727b04 100644 --- a/backend/app/api/agent.py +++ b/backend/app/api/agent.py @@ -227,12 +227,14 @@ async def create_task_comment( @router.get("/boards/{board_id}/memory", response_model=DefaultLimitOffsetPage[BoardMemoryRead]) async def list_board_memory( + is_chat: bool | None = Query(default=None), board: Board = Depends(get_board_or_404), session: AsyncSession = Depends(get_session), agent_ctx: AgentAuthContext = Depends(get_agent_auth_context), ) -> DefaultLimitOffsetPage[BoardMemoryRead]: _guard_board_access(agent_ctx, board) return await board_memory_api.list_board_memory( + is_chat=is_chat, board=board, session=session, actor=_actor(agent_ctx), diff --git a/backend/app/api/board_onboarding.py b/backend/app/api/board_onboarding.py index 6b7bb7cb..df4b0256 100644 --- a/backend/app/api/board_onboarding.py +++ b/backend/app/api/board_onboarding.py @@ -5,6 +5,7 @@ import re from uuid import uuid4 from fastapi import APIRouter, Depends, HTTPException, status +from pydantic import ValidationError from sqlmodel import col, select from sqlmodel.ext.asyncio.session import AsyncSession @@ -25,8 +26,10 @@ from app.schemas.board_onboarding import ( BoardOnboardingAgentComplete, BoardOnboardingAgentUpdate, BoardOnboardingConfirm, + BoardOnboardingLeadAgentDraft, BoardOnboardingRead, BoardOnboardingStart, + BoardOnboardingUserProfile, ) from app.schemas.boards import BoardRead from app.services.agent_provisioning import DEFAULT_HEARTBEAT_CONFIG, provision_agent @@ -65,6 +68,9 @@ async def _ensure_lead_agent( gateway: Gateway, config: GatewayClientConfig, auth: AuthContext, + *, + agent_name: str | None = None, + identity_profile: dict[str, str] | None = None, ) -> Agent: existing = ( await session.exec( @@ -74,24 +80,31 @@ async def _ensure_lead_agent( ) ).first() if existing: - if existing.name != _lead_agent_name(board): - existing.name = _lead_agent_name(board) + desired_name = agent_name or _lead_agent_name(board) + if existing.name != desired_name: + existing.name = desired_name session.add(existing) await session.commit() await session.refresh(existing) return existing + merged_identity_profile = { + "role": "Board Lead", + "communication_style": "direct, concise, practical", + "emoji": ":gear:", + } + if identity_profile: + merged_identity_profile.update( + {key: value.strip() for key, value in identity_profile.items() if value.strip()} + ) + agent = Agent( - name=_lead_agent_name(board), + name=agent_name or _lead_agent_name(board), status="provisioning", board_id=board.id, is_board_lead=True, heartbeat_config=DEFAULT_HEARTBEAT_CONFIG.copy(), - identity_profile={ - "role": "Board Lead", - "communication_style": "direct, concise, practical", - "emoji": ":gear:", - }, + identity_profile=merged_identity_profile, ) raw_token = generate_agent_token() agent.agent_token_hash = hash_agent_token(raw_token) @@ -162,7 +175,11 @@ async def start_onboarding( prompt = ( "BOARD ONBOARDING REQUEST\n\n" f"Board Name: {board.name}\n" - "You are the main agent. Ask the user 3-6 focused questions to clarify their goal.\n" + "You are the main agent. Ask the user 6-10 focused questions total:\n" + "- 3-6 questions to clarify the board goal.\n" + "- 1 question to choose a unique name for the board lead agent (first-name style).\n" + "- 2-4 questions to capture the user's preferences for how the board lead should work\n" + " (communication style, autonomy, update cadence, and output formatting).\n" "Do NOT respond in OpenClaw chat.\n" "All onboarding responses MUST be sent to Mission Control via API.\n" f"Mission Control base URL: {base_url}\n" @@ -178,13 +195,19 @@ async def start_onboarding( f'curl -s -X POST "{base_url}/api/v1/agent/boards/{board.id}/onboarding" ' '-H "X-Agent-Token: $AUTH_TOKEN" ' '-H "Content-Type: application/json" ' - '-d \'{"status":"complete","board_type":"goal","objective":"...","success_metrics":{...},"target_date":"YYYY-MM-DD"}\'\n' + '-d \'{"status":"complete","board_type":"goal","objective":"...","success_metrics":{"metric":"...","target":"..."},"target_date":"YYYY-MM-DD","user_profile":{"preferred_name":"...","pronouns":"...","timezone":"...","notes":"...","context":"..."},"lead_agent":{"name":"Ava","identity_profile":{"role":"Board Lead","communication_style":"direct, concise, practical","emoji":":gear:"},"autonomy_level":"balanced","verbosity":"concise","output_format":"bullets","update_cadence":"daily","custom_instructions":"..."}}\'\n' + "ENUMS:\n" + "- board_type: goal | general\n" + "- lead_agent.autonomy_level: ask_first | balanced | autonomous\n" + "- lead_agent.verbosity: concise | balanced | detailed\n" + "- lead_agent.output_format: bullets | mixed | narrative\n" + "- lead_agent.update_cadence: asap | hourly | daily | weekly\n" "QUESTION FORMAT (one question per response, no arrays, no markdown, no extra text):\n" '{"question":"...","options":[{"id":"1","label":"..."},{"id":"2","label":"..."}]}\n' "Do NOT wrap questions in a list. Do NOT add commentary.\n" - "When you have enough info, return JSON ONLY (via API):\n" - '{"status":"complete","board_type":"goal"|"general","objective":"...",' - '"success_metrics":{...},"target_date":"YYYY-MM-DD"}.' + "When you have enough info, send one final response with status=complete.\n" + "The completion payload must include board_type. If board_type=goal, include objective + success_metrics.\n" + "Also include user_profile + lead_agent to configure the board lead's working style.\n" ) try: @@ -337,10 +360,71 @@ async def confirm_onboarding( onboarding.status = "confirmed" onboarding.updated_at = utcnow() + user_profile: BoardOnboardingUserProfile | None = None + lead_agent: BoardOnboardingLeadAgentDraft | None = None + if isinstance(onboarding.draft_goal, dict): + raw_profile = onboarding.draft_goal.get("user_profile") + if raw_profile is not None: + try: + user_profile = BoardOnboardingUserProfile.model_validate(raw_profile) + except ValidationError: + user_profile = None + raw_lead = onboarding.draft_goal.get("lead_agent") + if raw_lead is not None: + try: + lead_agent = BoardOnboardingLeadAgentDraft.model_validate(raw_lead) + except ValidationError: + lead_agent = None + + if auth.user and user_profile: + changed = False + if user_profile.preferred_name is not None: + auth.user.preferred_name = user_profile.preferred_name + changed = True + if user_profile.pronouns is not None: + auth.user.pronouns = user_profile.pronouns + changed = True + if user_profile.timezone is not None: + auth.user.timezone = user_profile.timezone + changed = True + if user_profile.notes is not None: + auth.user.notes = user_profile.notes + changed = True + if user_profile.context is not None: + auth.user.context = user_profile.context + changed = True + if changed: + session.add(auth.user) + + lead_identity_profile: dict[str, str] = {} + lead_name: str | None = None + if lead_agent: + lead_name = lead_agent.name + if lead_agent.identity_profile: + lead_identity_profile.update(lead_agent.identity_profile) + if lead_agent.autonomy_level: + lead_identity_profile["autonomy_level"] = lead_agent.autonomy_level + if lead_agent.verbosity: + lead_identity_profile["verbosity"] = lead_agent.verbosity + if lead_agent.output_format: + lead_identity_profile["output_format"] = lead_agent.output_format + if lead_agent.update_cadence: + lead_identity_profile["update_cadence"] = lead_agent.update_cadence + if lead_agent.custom_instructions: + lead_identity_profile["custom_instructions"] = lead_agent.custom_instructions + gateway, config = await _gateway_config(session, board) session.add(board) session.add(onboarding) await session.commit() await session.refresh(board) - await _ensure_lead_agent(session, board, gateway, config, auth) + await _ensure_lead_agent( + session, + board, + gateway, + config, + auth, + agent_name=lead_name, + identity_profile=lead_identity_profile or None, + ) return board diff --git a/backend/app/core/durations.py b/backend/app/core/durations.py new file mode 100644 index 00000000..00eda9f1 --- /dev/null +++ b/backend/app/core/durations.py @@ -0,0 +1,37 @@ +from __future__ import annotations + +import re + +_DURATION_RE = re.compile(r"^(?P[1-9]\\d*)\\s*(?P[smhdw])$", flags=re.IGNORECASE) + +_MULTIPLIERS: dict[str, int] = { + "s": 1, + "m": 60, + "h": 60 * 60, + "d": 60 * 60 * 24, + "w": 60 * 60 * 24 * 7, +} + + +def normalize_every(value: str) -> str: + normalized = value.strip().lower().replace(" ", "") + if not normalized: + raise ValueError("schedule is required") + return normalized + + +def parse_every_to_seconds(value: str) -> int: + normalized = normalize_every(value) + match = _DURATION_RE.match(normalized) + if not match: + raise ValueError('Invalid schedule. Expected format like "10m", "1h", "2d", "1w".') + num = int(match.group("num")) + unit = match.group("unit").lower() + seconds = num * _MULTIPLIERS[unit] + if seconds <= 0: + raise ValueError("Schedule must be greater than 0.") + # Prevent accidental absurd schedules (e.g. 999999999d). + if seconds > 60 * 60 * 24 * 365 * 10: + raise ValueError("Schedule is too large (max 10 years).") + return seconds + diff --git a/backend/app/schemas/board_onboarding.py b/backend/app/schemas/board_onboarding.py index 3ff42e0d..5d64a9b1 100644 --- a/backend/app/schemas/board_onboarding.py +++ b/backend/app/schemas/board_onboarding.py @@ -1,10 +1,10 @@ from __future__ import annotations from datetime import datetime -from typing import Literal, Self +from typing import Any, Literal, Self from uuid import UUID -from pydantic import Field, model_validator +from pydantic import Field, field_validator, model_validator from sqlmodel import SQLModel from app.schemas.common import NonEmptyStr @@ -43,8 +43,87 @@ class BoardOnboardingAgentQuestion(SQLModel): options: list[BoardOnboardingQuestionOption] = Field(min_length=1) +def _normalize_optional_text(value: Any) -> Any: + if value is None: + return None + if isinstance(value, str): + text = value.strip() + return text or None + return value + + +class BoardOnboardingUserProfile(SQLModel): + preferred_name: str | None = None + pronouns: str | None = None + timezone: str | None = None + notes: str | None = None + context: str | None = None + + @field_validator( + "preferred_name", + "pronouns", + "timezone", + "notes", + "context", + mode="before", + ) + @classmethod + def normalize_text(cls, value: Any) -> Any: + return _normalize_optional_text(value) + + +LeadAgentAutonomyLevel = Literal["ask_first", "balanced", "autonomous"] +LeadAgentVerbosity = Literal["concise", "balanced", "detailed"] +LeadAgentOutputFormat = Literal["bullets", "mixed", "narrative"] +LeadAgentUpdateCadence = Literal["asap", "hourly", "daily", "weekly"] + + +class BoardOnboardingLeadAgentDraft(SQLModel): + name: NonEmptyStr | None = None + # role, communication_style, emoji are expected keys. + identity_profile: dict[str, str] | None = None + autonomy_level: LeadAgentAutonomyLevel | None = None + verbosity: LeadAgentVerbosity | None = None + output_format: LeadAgentOutputFormat | None = None + update_cadence: LeadAgentUpdateCadence | None = None + custom_instructions: str | None = None + + @field_validator( + "autonomy_level", + "verbosity", + "output_format", + "update_cadence", + "custom_instructions", + mode="before", + ) + @classmethod + def normalize_text_fields(cls, value: Any) -> Any: + return _normalize_optional_text(value) + + @field_validator("identity_profile", mode="before") + @classmethod + def normalize_identity_profile(cls, value: Any) -> Any: + if value is None: + return None + if not isinstance(value, dict): + return value + normalized: dict[str, str] = {} + for raw_key, raw_val in value.items(): + if raw_val is None: + continue + key = str(raw_key).strip() + if not key: + continue + val = str(raw_val).strip() + if val: + normalized[key] = val + return normalized or None + + class BoardOnboardingAgentComplete(BoardOnboardingConfirm): status: Literal["complete"] + user_profile: BoardOnboardingUserProfile | None = None + lead_agent: BoardOnboardingLeadAgentDraft | None = None BoardOnboardingAgentUpdate = BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion @@ -56,6 +135,6 @@ class BoardOnboardingRead(SQLModel): session_key: str status: str messages: list[dict[str, object]] | None = None - draft_goal: dict[str, object] | None = None + draft_goal: BoardOnboardingAgentComplete | None = None created_at: datetime updated_at: datetime diff --git a/backend/app/services/agent_provisioning.py b/backend/app/services/agent_provisioning.py index da4e50c3..d76b12eb 100644 --- a/backend/app/services/agent_provisioning.py +++ b/backend/app/services/agent_provisioning.py @@ -29,6 +29,14 @@ IDENTITY_PROFILE_FIELDS = { "emoji": "identity_emoji", } +EXTRA_IDENTITY_PROFILE_FIELDS = { + "autonomy_level": "identity_autonomy_level", + "verbosity": "identity_verbosity", + "output_format": "identity_output_format", + "update_cadence": "identity_update_cadence", + "custom_instructions": "identity_custom_instructions", +} + DEFAULT_GATEWAY_FILES = frozenset( { "AGENTS.md", @@ -85,7 +93,8 @@ def _heartbeat_config(agent: Agent) -> dict[str, Any]: def _template_env() -> Environment: return Environment( loader=FileSystemLoader(_templates_root()), - autoescape=select_autoescape(default=True), + # Render markdown verbatim (HTML escaping makes it harder for agents to read). + autoescape=select_autoescape(default=False), undefined=StrictUndefined, keep_trailing_newline=True, ) @@ -95,12 +104,15 @@ def _heartbeat_template_name(agent: Agent) -> str: return HEARTBEAT_LEAD_TEMPLATE if agent.is_board_lead else HEARTBEAT_AGENT_TEMPLATE -def _workspace_path(agent_name: str, workspace_root: str) -> str: +def _workspace_path(agent: Agent, workspace_root: str) -> str: if not workspace_root: raise ValueError("gateway_workspace_root is required") - root = workspace_root - root = root.rstrip("/") - return f"{root}/workspace-{_slugify(agent_name)}" + root = workspace_root.rstrip("/") + # Use agent key derived from session key when possible. This prevents collisions for + # lead agents (session key includes board id) even if multiple boards share the same + # display name (e.g. "Lead Agent"). + key = _agent_key(agent) + return f"{root}/workspace-{_slugify(key)}" def _build_context( @@ -116,7 +128,7 @@ def _build_context( raise ValueError("gateway_main_session_key is required") agent_id = str(agent.id) workspace_root = gateway.workspace_root - workspace_path = _workspace_path(agent.name, workspace_root) + workspace_path = _workspace_path(agent, workspace_root) session_key = agent.openclaw_session_id or "" base_url = settings.base_url or "REPLACE_WITH_BASE_URL" main_session_key = gateway.main_session_key @@ -140,6 +152,10 @@ def _build_context( context_key: normalized_identity.get(field, DEFAULT_IDENTITY_PROFILE[field]) for field, context_key in IDENTITY_PROFILE_FIELDS.items() } + extra_identity_context = { + context_key: normalized_identity.get(field, "") + for field, context_key in EXTRA_IDENTITY_PROFILE_FIELDS.items() + } preferred_name = (user.preferred_name or "") if user else "" if preferred_name: preferred_name = preferred_name.strip().split()[0] @@ -167,6 +183,7 @@ def _build_context( "user_notes": (user.notes or "") if user else "", "user_context": (user.context or "") if user else "", **identity_context, + **extra_identity_context, } @@ -197,6 +214,10 @@ def _build_main_context( context_key: normalized_identity.get(field, DEFAULT_IDENTITY_PROFILE[field]) for field, context_key in IDENTITY_PROFILE_FIELDS.items() } + extra_identity_context = { + context_key: normalized_identity.get(field, "") + for field, context_key in EXTRA_IDENTITY_PROFILE_FIELDS.items() + } preferred_name = (user.preferred_name or "") if user else "" if preferred_name: preferred_name = preferred_name.strip().split()[0] @@ -215,6 +236,7 @@ def _build_main_context( "user_notes": (user.notes or "") if user else "", "user_context": (user.context or "") if user else "", **identity_context, + **extra_identity_context, } @@ -457,7 +479,7 @@ async def provision_agent( await ensure_session(session_key, config=client_config, label=agent.name) agent_id = _agent_key(agent) - workspace_path = _workspace_path(agent.name, gateway.workspace_root) + workspace_path = _workspace_path(agent, gateway.workspace_root) heartbeat = _heartbeat_config(agent) await _patch_gateway_agent_list(agent_id, workspace_path, heartbeat, client_config) @@ -564,5 +586,5 @@ async def cleanup_agent( workspace_path = entry.get("workspace") if entry else None if not workspace_path: - workspace_path = _workspace_path(agent.name, gateway.workspace_root) + workspace_path = _workspace_path(agent, gateway.workspace_root) return workspace_path diff --git a/backend/scripts/export_openapi.py b/backend/scripts/export_openapi.py new file mode 100644 index 00000000..182152d2 --- /dev/null +++ b/backend/scripts/export_openapi.py @@ -0,0 +1,22 @@ +from __future__ import annotations + +import json +from pathlib import Path +import sys + +BACKEND_ROOT = Path(__file__).resolve().parents[1] +sys.path.insert(0, str(BACKEND_ROOT)) + +from app.main import app # noqa: E402 + + +def main() -> None: + # Importing the FastAPI app does not run lifespan hooks, so this does not require a DB. + out_path = BACKEND_ROOT / "openapi.json" + payload = app.openapi() + out_path.write_text(json.dumps(payload, indent=2, sort_keys=True), encoding="utf-8") + print(str(out_path)) + + +if __name__ == "__main__": + main() diff --git a/frontend/orval.config.ts b/frontend/orval.config.ts index f786730e..b79af4b9 100644 --- a/frontend/orval.config.ts +++ b/frontend/orval.config.ts @@ -3,7 +3,8 @@ import { defineConfig } from "orval"; export default defineConfig({ api: { input: { - target: "http://127.0.0.1:8000/openapi.json", + target: + process.env.ORVAL_INPUT ?? "http://127.0.0.1:8000/openapi.json", }, output: { mode: "tags-split", diff --git a/frontend/src/api/generated/agent/agent.ts b/frontend/src/api/generated/agent/agent.ts index 404ac34a..fdc0b778 100644 --- a/frontend/src/api/generated/agent/agent.ts +++ b/frontend/src/api/generated/agent/agent.ts @@ -58,6 +58,333 @@ import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; +/** + * @summary List Agents + */ +export type listAgentsApiV1AgentAgentsGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedAgentRead; + status: 200; +}; + +export type listAgentsApiV1AgentAgentsGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type listAgentsApiV1AgentAgentsGetResponseSuccess = + listAgentsApiV1AgentAgentsGetResponse200 & { + headers: Headers; + }; +export type listAgentsApiV1AgentAgentsGetResponseError = + listAgentsApiV1AgentAgentsGetResponse422 & { + headers: Headers; + }; + +export type listAgentsApiV1AgentAgentsGetResponse = + | listAgentsApiV1AgentAgentsGetResponseSuccess + | listAgentsApiV1AgentAgentsGetResponseError; + +export const getListAgentsApiV1AgentAgentsGetUrl = ( + params?: ListAgentsApiV1AgentAgentsGetParams, +) => { + const normalizedParams = new URLSearchParams(); + + Object.entries(params || {}).forEach(([key, value]) => { + if (value !== undefined) { + normalizedParams.append(key, value === null ? "null" : value.toString()); + } + }); + + const stringifiedParams = normalizedParams.toString(); + + return stringifiedParams.length > 0 + ? `/api/v1/agent/agents?${stringifiedParams}` + : `/api/v1/agent/agents`; +}; + +export const listAgentsApiV1AgentAgentsGet = async ( + params?: ListAgentsApiV1AgentAgentsGetParams, + options?: RequestInit, +): Promise => { + return customFetch( + getListAgentsApiV1AgentAgentsGetUrl(params), + { + ...options, + method: "GET", + }, + ); +}; + +export const getListAgentsApiV1AgentAgentsGetQueryKey = ( + params?: ListAgentsApiV1AgentAgentsGetParams, +) => { + return [`/api/v1/agent/agents`, ...(params ? [params] : [])] as const; +}; + +export const getListAgentsApiV1AgentAgentsGetQueryOptions = < + TData = Awaited>, + TError = HTTPValidationError, +>( + params?: ListAgentsApiV1AgentAgentsGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, +) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? getListAgentsApiV1AgentAgentsGetQueryKey(params); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + listAgentsApiV1AgentAgentsGet(params, { signal, ...requestOptions }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type ListAgentsApiV1AgentAgentsGetQueryResult = NonNullable< + Awaited> +>; +export type ListAgentsApiV1AgentAgentsGetQueryError = HTTPValidationError; + +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + params: undefined | ListAgentsApiV1AgentAgentsGetParams, + options: { + query: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited>, + TError, + Awaited> + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + params?: ListAgentsApiV1AgentAgentsGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited>, + TError, + Awaited> + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + params?: ListAgentsApiV1AgentAgentsGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary List Agents + */ + +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + params?: ListAgentsApiV1AgentAgentsGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = getListAgentsApiV1AgentAgentsGetQueryOptions( + params, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * @summary Create Agent + */ +export type createAgentApiV1AgentAgentsPostResponse200 = { + data: AgentRead; + status: 200; +}; + +export type createAgentApiV1AgentAgentsPostResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type createAgentApiV1AgentAgentsPostResponseSuccess = + createAgentApiV1AgentAgentsPostResponse200 & { + headers: Headers; + }; +export type createAgentApiV1AgentAgentsPostResponseError = + createAgentApiV1AgentAgentsPostResponse422 & { + headers: Headers; + }; + +export type createAgentApiV1AgentAgentsPostResponse = + | createAgentApiV1AgentAgentsPostResponseSuccess + | createAgentApiV1AgentAgentsPostResponseError; + +export const getCreateAgentApiV1AgentAgentsPostUrl = () => { + return `/api/v1/agent/agents`; +}; + +export const createAgentApiV1AgentAgentsPost = async ( + agentCreate: AgentCreate, + options?: RequestInit, +): Promise => { + return customFetch( + getCreateAgentApiV1AgentAgentsPostUrl(), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(agentCreate), + }, + ); +}; + +export const getCreateAgentApiV1AgentAgentsPostMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: AgentCreate }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { data: AgentCreate }, + TContext +> => { + const mutationKey = ["createAgentApiV1AgentAgentsPost"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited>, + { data: AgentCreate } + > = (props) => { + const { data } = props ?? {}; + + return createAgentApiV1AgentAgentsPost(data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type CreateAgentApiV1AgentAgentsPostMutationResult = NonNullable< + Awaited> +>; +export type CreateAgentApiV1AgentAgentsPostMutationBody = AgentCreate; +export type CreateAgentApiV1AgentAgentsPostMutationError = HTTPValidationError; + +/** + * @summary Create Agent + */ +export const useCreateAgentApiV1AgentAgentsPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: AgentCreate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { data: AgentCreate }, + TContext +> => { + return useMutation( + getCreateAgentApiV1AgentAgentsPostMutationOptions(options), + queryClient, + ); +}; /** * @summary List Boards */ @@ -471,33 +798,189 @@ export function useGetBoardApiV1AgentBoardsBoardIdGet< } /** - * @summary List Agents + * @summary Nudge Agent */ -export type listAgentsApiV1AgentAgentsGetResponse200 = { - data: LimitOffsetPageTypeVarCustomizedAgentRead; +export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse200 = + { + data: OkResponse; + status: 200; + }; + +export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseSuccess = + nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse200 & { + headers: Headers; + }; +export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseError = + nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse422 & { + headers: Headers; + }; + +export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse = + | nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseSuccess + | nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseError; + +export const getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostUrl = ( + boardId: string, + agentId: string, +) => { + return `/api/v1/agent/boards/${boardId}/agents/${agentId}/nudge`; +}; + +export const nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost = async ( + boardId: string, + agentId: string, + agentNudge: AgentNudge, + options?: RequestInit, +): Promise => { + return customFetch( + getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostUrl( + boardId, + agentId, + ), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(agentNudge), + }, + ); +}; + +export const getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost + > + >, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext + > => { + const mutationKey = [ + "nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost", + ]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited< + ReturnType< + typeof nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost + > + >, + { boardId: string; agentId: string; data: AgentNudge } + > = (props) => { + const { boardId, agentId, data } = props ?? {}; + + return nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost( + boardId, + agentId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type NudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type NudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationBody = + AgentNudge; +export type NudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationError = + HTTPValidationError; + +/** + * @summary Nudge Agent + */ +export const useNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost + > + >, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext +> => { + return useMutation( + getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationOptions( + options, + ), + queryClient, + ); +}; +/** + * @summary List Approvals + */ +export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedApprovalRead; status: 200; }; -export type listAgentsApiV1AgentAgentsGetResponse422 = { +export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse422 = { data: HTTPValidationError; status: 422; }; -export type listAgentsApiV1AgentAgentsGetResponseSuccess = - listAgentsApiV1AgentAgentsGetResponse200 & { +export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseSuccess = + listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse200 & { headers: Headers; }; -export type listAgentsApiV1AgentAgentsGetResponseError = - listAgentsApiV1AgentAgentsGetResponse422 & { +export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseError = + listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse422 & { headers: Headers; }; -export type listAgentsApiV1AgentAgentsGetResponse = - | listAgentsApiV1AgentAgentsGetResponseSuccess - | listAgentsApiV1AgentAgentsGetResponseError; +export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse = + | listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseSuccess + | listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseError; -export const getListAgentsApiV1AgentAgentsGetUrl = ( - params?: ListAgentsApiV1AgentAgentsGetParams, +export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetUrl = ( + boardId: string, + params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, ) => { const normalizedParams = new URLSearchParams(); @@ -510,16 +993,17 @@ export const getListAgentsApiV1AgentAgentsGetUrl = ( const stringifiedParams = normalizedParams.toString(); return stringifiedParams.length > 0 - ? `/api/v1/agent/agents?${stringifiedParams}` - : `/api/v1/agent/agents`; + ? `/api/v1/agent/boards/${boardId}/approvals?${stringifiedParams}` + : `/api/v1/agent/boards/${boardId}/approvals`; }; -export const listAgentsApiV1AgentAgentsGet = async ( - params?: ListAgentsApiV1AgentAgentsGetParams, +export const listApprovalsApiV1AgentBoardsBoardIdApprovalsGet = async ( + boardId: string, + params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, options?: RequestInit, -): Promise => { - return customFetch( - getListAgentsApiV1AgentAgentsGetUrl(params), +): Promise => { + return customFetch( + getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetUrl(boardId, params), { ...options, method: "GET", @@ -527,21 +1011,30 @@ export const listAgentsApiV1AgentAgentsGet = async ( ); }; -export const getListAgentsApiV1AgentAgentsGetQueryKey = ( - params?: ListAgentsApiV1AgentAgentsGetParams, +export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryKey = ( + boardId: string, + params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, ) => { - return [`/api/v1/agent/agents`, ...(params ? [params] : [])] as const; + return [ + `/api/v1/agent/boards/${boardId}/approvals`, + ...(params ? [params] : []), + ] as const; }; -export const getListAgentsApiV1AgentAgentsGetQueryOptions = < - TData = Awaited>, +export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryOptions = < + TData = Awaited< + ReturnType + >, TError = HTTPValidationError, >( - params?: ListAgentsApiV1AgentAgentsGetParams, + boardId: string, + params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited< + ReturnType + >, TError, TData > @@ -552,43 +1045,68 @@ export const getListAgentsApiV1AgentAgentsGetQueryOptions = < const { query: queryOptions, request: requestOptions } = options ?? {}; const queryKey = - queryOptions?.queryKey ?? getListAgentsApiV1AgentAgentsGetQueryKey(params); + queryOptions?.queryKey ?? + getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryKey( + boardId, + params, + ); const queryFn: QueryFunction< - Awaited> + Awaited> > = ({ signal }) => - listAgentsApiV1AgentAgentsGet(params, { signal, ...requestOptions }); + listApprovalsApiV1AgentBoardsBoardIdApprovalsGet(boardId, params, { + signal, + ...requestOptions, + }); - return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, + return { + queryKey, + queryFn, + enabled: !!boardId, + ...queryOptions, + } as UseQueryOptions< + Awaited< + ReturnType + >, TError, TData > & { queryKey: DataTag }; }; -export type ListAgentsApiV1AgentAgentsGetQueryResult = NonNullable< - Awaited> ->; -export type ListAgentsApiV1AgentAgentsGetQueryError = HTTPValidationError; +export type ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryResult = + NonNullable< + Awaited> + >; +export type ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryError = + HTTPValidationError; -export function useListAgentsApiV1AgentAgentsGet< - TData = Awaited>, +export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< + TData = Awaited< + ReturnType + >, TError = HTTPValidationError, >( - params: undefined | ListAgentsApiV1AgentAgentsGetParams, + boardId: string, + params: undefined | ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, options: { query: Partial< UseQueryOptions< - Awaited>, + Awaited< + ReturnType + >, TError, TData > > & Pick< DefinedInitialDataOptions< - Awaited>, + Awaited< + ReturnType + >, TError, - Awaited> + Awaited< + ReturnType + > >, "initialData" >; @@ -598,24 +1116,33 @@ export function useListAgentsApiV1AgentAgentsGet< ): DefinedUseQueryResult & { queryKey: DataTag; }; -export function useListAgentsApiV1AgentAgentsGet< - TData = Awaited>, +export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< + TData = Awaited< + ReturnType + >, TError = HTTPValidationError, >( - params?: ListAgentsApiV1AgentAgentsGetParams, + boardId: string, + params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited< + ReturnType + >, TError, TData > > & Pick< UndefinedInitialDataOptions< - Awaited>, + Awaited< + ReturnType + >, TError, - Awaited> + Awaited< + ReturnType + > >, "initialData" >; @@ -625,15 +1152,20 @@ export function useListAgentsApiV1AgentAgentsGet< ): UseQueryResult & { queryKey: DataTag; }; -export function useListAgentsApiV1AgentAgentsGet< - TData = Awaited>, +export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< + TData = Awaited< + ReturnType + >, TError = HTTPValidationError, >( - params?: ListAgentsApiV1AgentAgentsGetParams, + boardId: string, + params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited< + ReturnType + >, TError, TData > @@ -645,18 +1177,23 @@ export function useListAgentsApiV1AgentAgentsGet< queryKey: DataTag; }; /** - * @summary List Agents + * @summary List Approvals */ -export function useListAgentsApiV1AgentAgentsGet< - TData = Awaited>, +export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< + TData = Awaited< + ReturnType + >, TError = HTTPValidationError, >( - params?: ListAgentsApiV1AgentAgentsGetParams, + boardId: string, + params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited< + ReturnType + >, TError, TData > @@ -667,10 +1204,12 @@ export function useListAgentsApiV1AgentAgentsGet< ): UseQueryResult & { queryKey: DataTag; } { - const queryOptions = getListAgentsApiV1AgentAgentsGetQueryOptions( - params, - options, - ); + const queryOptions = + getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryOptions( + boardId, + params, + options, + ); const query = useQuery(queryOptions, queryClient) as UseQueryResult< TData, @@ -681,119 +1220,703 @@ export function useListAgentsApiV1AgentAgentsGet< } /** - * @summary Create Agent + * @summary Create Approval */ -export type createAgentApiV1AgentAgentsPostResponse200 = { - data: AgentRead; +export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse200 = { + data: ApprovalRead; status: 200; }; -export type createAgentApiV1AgentAgentsPostResponse422 = { +export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse422 = { data: HTTPValidationError; status: 422; }; -export type createAgentApiV1AgentAgentsPostResponseSuccess = - createAgentApiV1AgentAgentsPostResponse200 & { +export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseSuccess = + createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse200 & { headers: Headers; }; -export type createAgentApiV1AgentAgentsPostResponseError = - createAgentApiV1AgentAgentsPostResponse422 & { +export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseError = + createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse422 & { headers: Headers; }; -export type createAgentApiV1AgentAgentsPostResponse = - | createAgentApiV1AgentAgentsPostResponseSuccess - | createAgentApiV1AgentAgentsPostResponseError; +export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse = + | createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseSuccess + | createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseError; -export const getCreateAgentApiV1AgentAgentsPostUrl = () => { - return `/api/v1/agent/agents`; +export const getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostUrl = ( + boardId: string, +) => { + return `/api/v1/agent/boards/${boardId}/approvals`; }; -export const createAgentApiV1AgentAgentsPost = async ( - agentCreate: AgentCreate, +export const createApprovalApiV1AgentBoardsBoardIdApprovalsPost = async ( + boardId: string, + approvalCreate: ApprovalCreate, options?: RequestInit, -): Promise => { - return customFetch( - getCreateAgentApiV1AgentAgentsPostUrl(), +): Promise => { + return customFetch( + getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostUrl(boardId), { ...options, method: "POST", headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(agentCreate), + body: JSON.stringify(approvalCreate), }, ); }; -export const getCreateAgentApiV1AgentAgentsPostMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, +export const getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: ApprovalCreate }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, TError, - { data: AgentCreate }, + { boardId: string; data: ApprovalCreate }, TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { data: AgentCreate }, - TContext -> => { - const mutationKey = ["createAgentApiV1AgentAgentsPost"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; + > => { + const mutationKey = ["createApprovalApiV1AgentBoardsBoardIdApprovalsPost"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; - const mutationFn: MutationFunction< - Awaited>, - { data: AgentCreate } - > = (props) => { - const { data } = props ?? {}; + const mutationFn: MutationFunction< + Awaited< + ReturnType + >, + { boardId: string; data: ApprovalCreate } + > = (props) => { + const { boardId, data } = props ?? {}; - return createAgentApiV1AgentAgentsPost(data, requestOptions); + return createApprovalApiV1AgentBoardsBoardIdApprovalsPost( + boardId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; }; - return { mutationFn, ...mutationOptions }; -}; - -export type CreateAgentApiV1AgentAgentsPostMutationResult = NonNullable< - Awaited> ->; -export type CreateAgentApiV1AgentAgentsPostMutationBody = AgentCreate; -export type CreateAgentApiV1AgentAgentsPostMutationError = HTTPValidationError; +export type CreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type CreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationBody = + ApprovalCreate; +export type CreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationError = + HTTPValidationError; /** - * @summary Create Agent + * @summary Create Approval */ -export const useCreateAgentApiV1AgentAgentsPost = < +export const useCreateApprovalApiV1AgentBoardsBoardIdApprovalsPost = < TError = HTTPValidationError, TContext = unknown, >( options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited< + ReturnType + >, TError, - { data: AgentCreate }, + { boardId: string; data: ApprovalCreate }, TContext >; request?: SecondParameter; }, queryClient?: QueryClient, ): UseMutationResult< - Awaited>, + Awaited< + ReturnType + >, TError, - { data: AgentCreate }, + { boardId: string; data: ApprovalCreate }, TContext > => { return useMutation( - getCreateAgentApiV1AgentAgentsPostMutationOptions(options), + getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationOptions( + options, + ), + queryClient, + ); +}; +/** + * @summary List Board Memory + */ +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedBoardMemoryRead; + status: 200; +}; + +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseSuccess = + listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse200 & { + headers: Headers; + }; +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseError = + listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse422 & { + headers: Headers; + }; + +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse = + | listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseSuccess + | listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseError; + +export const getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetUrl = ( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, +) => { + const normalizedParams = new URLSearchParams(); + + Object.entries(params || {}).forEach(([key, value]) => { + if (value !== undefined) { + normalizedParams.append(key, value === null ? "null" : value.toString()); + } + }); + + const stringifiedParams = normalizedParams.toString(); + + return stringifiedParams.length > 0 + ? `/api/v1/agent/boards/${boardId}/memory?${stringifiedParams}` + : `/api/v1/agent/boards/${boardId}/memory`; +}; + +export const listBoardMemoryApiV1AgentBoardsBoardIdMemoryGet = async ( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, + options?: RequestInit, +): Promise => { + return customFetch( + getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetUrl(boardId, params), + { + ...options, + method: "GET", + }, + ); +}; + +export const getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryKey = ( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, +) => { + return [ + `/api/v1/agent/boards/${boardId}/memory`, + ...(params ? [params] : []), + ] as const; +}; + +export const getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryOptions = < + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, +) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryKey(boardId, params); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + listBoardMemoryApiV1AgentBoardsBoardIdMemoryGet(boardId, params, { + signal, + ...requestOptions, + }); + + return { + queryKey, + queryFn, + enabled: !!boardId, + ...queryOptions, + } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryResult = + NonNullable< + Awaited> + >; +export type ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryError = + HTTPValidationError; + +export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params: undefined | ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, + options: { + query: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited< + ReturnType + >, + TError, + Awaited< + ReturnType + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited< + ReturnType + >, + TError, + Awaited< + ReturnType + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary List Board Memory + */ + +export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryOptions( + boardId, + params, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * @summary Create Board Memory + */ +export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse200 = { + data: BoardMemoryRead; + status: 200; +}; + +export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseSuccess = + createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse200 & { + headers: Headers; + }; +export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseError = + createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse422 & { + headers: Headers; + }; + +export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse = + | createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseSuccess + | createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseError; + +export const getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostUrl = ( + boardId: string, +) => { + return `/api/v1/agent/boards/${boardId}/memory`; +}; + +export const createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost = async ( + boardId: string, + boardMemoryCreate: BoardMemoryCreate, + options?: RequestInit, +): Promise => { + return customFetch( + getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostUrl(boardId), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(boardMemoryCreate), + }, + ); +}; + +export const getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardMemoryCreate }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardMemoryCreate }, + TContext + > => { + const mutationKey = ["createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited< + ReturnType + >, + { boardId: string; data: BoardMemoryCreate } + > = (props) => { + const { boardId, data } = props ?? {}; + + return createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost( + boardId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationBody = + BoardMemoryCreate; +export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationError = + HTTPValidationError; + +/** + * @summary Create Board Memory + */ +export const useCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardMemoryCreate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardMemoryCreate }, + TContext +> => { + return useMutation( + getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationOptions( + options, + ), + queryClient, + ); +}; +/** + * @summary Update Onboarding + */ +export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse200 = { + data: BoardOnboardingRead; + status: 200; +}; + +export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseSuccess = + updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse200 & { + headers: Headers; + }; +export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseError = + updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse422 & { + headers: Headers; + }; + +export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse = + | updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseSuccess + | updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseError; + +export const getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostUrl = ( + boardId: string, +) => { + return `/api/v1/agent/boards/${boardId}/onboarding`; +}; + +export const updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost = async ( + boardId: string, + boardOnboardingAgentCompleteBoardOnboardingAgentQuestion: + | BoardOnboardingAgentComplete + | BoardOnboardingAgentQuestion, + options?: RequestInit, +): Promise => { + return customFetch( + getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostUrl(boardId), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify( + boardOnboardingAgentCompleteBoardOnboardingAgentQuestion, + ), + }, + ); +}; + +export const getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { + boardId: string; + data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; + }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { + boardId: string; + data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; + }, + TContext + > => { + const mutationKey = [ + "updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost", + ]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited< + ReturnType + >, + { + boardId: string; + data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; + } + > = (props) => { + const { boardId, data } = props ?? {}; + + return updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost( + boardId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationBody = + | BoardOnboardingAgentComplete + | BoardOnboardingAgentQuestion; +export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationError = + HTTPValidationError; + +/** + * @summary Update Onboarding + */ +export const useUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { + boardId: string; + data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; + }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { + boardId: string; + data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; + }, + TContext +> => { + return useMutation( + getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationOptions( + options, + ), queryClient, ); }; @@ -1787,1129 +2910,6 @@ export const useCreateTaskCommentApiV1AgentBoardsBoardIdTasksTaskIdCommentsPost queryClient, ); }; -/** - * @summary List Board Memory - */ -export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse200 = { - data: LimitOffsetPageTypeVarCustomizedBoardMemoryRead; - status: 200; -}; - -export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseSuccess = - listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse200 & { - headers: Headers; - }; -export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseError = - listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse422 & { - headers: Headers; - }; - -export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse = - | listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseSuccess - | listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseError; - -export const getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetUrl = ( - boardId: string, - params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, -) => { - const normalizedParams = new URLSearchParams(); - - Object.entries(params || {}).forEach(([key, value]) => { - if (value !== undefined) { - normalizedParams.append(key, value === null ? "null" : value.toString()); - } - }); - - const stringifiedParams = normalizedParams.toString(); - - return stringifiedParams.length > 0 - ? `/api/v1/agent/boards/${boardId}/memory?${stringifiedParams}` - : `/api/v1/agent/boards/${boardId}/memory`; -}; - -export const listBoardMemoryApiV1AgentBoardsBoardIdMemoryGet = async ( - boardId: string, - params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, - options?: RequestInit, -): Promise => { - return customFetch( - getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetUrl(boardId, params), - { - ...options, - method: "GET", - }, - ); -}; - -export const getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryKey = ( - boardId: string, - params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, -) => { - return [ - `/api/v1/agent/boards/${boardId}/memory`, - ...(params ? [params] : []), - ] as const; -}; - -export const getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryOptions = < - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, -) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryKey(boardId, params); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - listBoardMemoryApiV1AgentBoardsBoardIdMemoryGet(boardId, params, { - signal, - ...requestOptions, - }); - - return { - queryKey, - queryFn, - enabled: !!boardId, - ...queryOptions, - } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryResult = - NonNullable< - Awaited> - >; -export type ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryError = - HTTPValidationError; - -export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params: undefined | ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, - options: { - query: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - > & - Pick< - DefinedInitialDataOptions< - Awaited< - ReturnType - >, - TError, - Awaited< - ReturnType - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): DefinedUseQueryResult & { - queryKey: DataTag; -}; -export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - > & - Pick< - UndefinedInitialDataOptions< - Awaited< - ReturnType - >, - TError, - Awaited< - ReturnType - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary List Board Memory - */ - -export function useListBoardMemoryApiV1AgentBoardsBoardIdMemoryGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetQueryOptions( - boardId, - params, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * @summary Create Board Memory - */ -export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse200 = { - data: BoardMemoryRead; - status: 200; -}; - -export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseSuccess = - createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse200 & { - headers: Headers; - }; -export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseError = - createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse422 & { - headers: Headers; - }; - -export type createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponse = - | createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseSuccess - | createBoardMemoryApiV1AgentBoardsBoardIdMemoryPostResponseError; - -export const getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostUrl = ( - boardId: string, -) => { - return `/api/v1/agent/boards/${boardId}/memory`; -}; - -export const createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost = async ( - boardId: string, - boardMemoryCreate: BoardMemoryCreate, - options?: RequestInit, -): Promise => { - return customFetch( - getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostUrl(boardId), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(boardMemoryCreate), - }, - ); -}; - -export const getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardMemoryCreate }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardMemoryCreate }, - TContext - > => { - const mutationKey = ["createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited< - ReturnType - >, - { boardId: string; data: BoardMemoryCreate } - > = (props) => { - const { boardId, data } = props ?? {}; - - return createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost( - boardId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationBody = - BoardMemoryCreate; -export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationError = - HTTPValidationError; - -/** - * @summary Create Board Memory - */ -export const useCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPost = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardMemoryCreate }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardMemoryCreate }, - TContext -> => { - return useMutation( - getCreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationOptions( - options, - ), - queryClient, - ); -}; -/** - * @summary List Approvals - */ -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse200 = { - data: LimitOffsetPageTypeVarCustomizedApprovalRead; - status: 200; -}; - -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseSuccess = - listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse200 & { - headers: Headers; - }; -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseError = - listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse422 & { - headers: Headers; - }; - -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse = - | listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseSuccess - | listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseError; - -export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetUrl = ( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, -) => { - const normalizedParams = new URLSearchParams(); - - Object.entries(params || {}).forEach(([key, value]) => { - if (value !== undefined) { - normalizedParams.append(key, value === null ? "null" : value.toString()); - } - }); - - const stringifiedParams = normalizedParams.toString(); - - return stringifiedParams.length > 0 - ? `/api/v1/agent/boards/${boardId}/approvals?${stringifiedParams}` - : `/api/v1/agent/boards/${boardId}/approvals`; -}; - -export const listApprovalsApiV1AgentBoardsBoardIdApprovalsGet = async ( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, - options?: RequestInit, -): Promise => { - return customFetch( - getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetUrl(boardId, params), - { - ...options, - method: "GET", - }, - ); -}; - -export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryKey = ( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, -) => { - return [ - `/api/v1/agent/boards/${boardId}/approvals`, - ...(params ? [params] : []), - ] as const; -}; - -export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryOptions = < - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, -) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryKey( - boardId, - params, - ); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - listApprovalsApiV1AgentBoardsBoardIdApprovalsGet(boardId, params, { - signal, - ...requestOptions, - }); - - return { - queryKey, - queryFn, - enabled: !!boardId, - ...queryOptions, - } as UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryResult = - NonNullable< - Awaited> - >; -export type ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryError = - HTTPValidationError; - -export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params: undefined | ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, - options: { - query: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - > & - Pick< - DefinedInitialDataOptions< - Awaited< - ReturnType - >, - TError, - Awaited< - ReturnType - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): DefinedUseQueryResult & { - queryKey: DataTag; -}; -export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - > & - Pick< - UndefinedInitialDataOptions< - Awaited< - ReturnType - >, - TError, - Awaited< - ReturnType - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary List Approvals - */ - -export function useListApprovalsApiV1AgentBoardsBoardIdApprovalsGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryOptions( - boardId, - params, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * @summary Create Approval - */ -export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse200 = { - data: ApprovalRead; - status: 200; -}; - -export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseSuccess = - createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse200 & { - headers: Headers; - }; -export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseError = - createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse422 & { - headers: Headers; - }; - -export type createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponse = - | createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseSuccess - | createApprovalApiV1AgentBoardsBoardIdApprovalsPostResponseError; - -export const getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostUrl = ( - boardId: string, -) => { - return `/api/v1/agent/boards/${boardId}/approvals`; -}; - -export const createApprovalApiV1AgentBoardsBoardIdApprovalsPost = async ( - boardId: string, - approvalCreate: ApprovalCreate, - options?: RequestInit, -): Promise => { - return customFetch( - getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostUrl(boardId), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(approvalCreate), - }, - ); -}; - -export const getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: ApprovalCreate }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: ApprovalCreate }, - TContext - > => { - const mutationKey = ["createApprovalApiV1AgentBoardsBoardIdApprovalsPost"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited< - ReturnType - >, - { boardId: string; data: ApprovalCreate } - > = (props) => { - const { boardId, data } = props ?? {}; - - return createApprovalApiV1AgentBoardsBoardIdApprovalsPost( - boardId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type CreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type CreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationBody = - ApprovalCreate; -export type CreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationError = - HTTPValidationError; - -/** - * @summary Create Approval - */ -export const useCreateApprovalApiV1AgentBoardsBoardIdApprovalsPost = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: ApprovalCreate }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: ApprovalCreate }, - TContext -> => { - return useMutation( - getCreateApprovalApiV1AgentBoardsBoardIdApprovalsPostMutationOptions( - options, - ), - queryClient, - ); -}; -/** - * @summary Update Onboarding - */ -export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse200 = { - data: BoardOnboardingRead; - status: 200; -}; - -export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseSuccess = - updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse200 & { - headers: Headers; - }; -export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseError = - updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse422 & { - headers: Headers; - }; - -export type updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponse = - | updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseSuccess - | updateOnboardingApiV1AgentBoardsBoardIdOnboardingPostResponseError; - -export const getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostUrl = ( - boardId: string, -) => { - return `/api/v1/agent/boards/${boardId}/onboarding`; -}; - -export const updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost = async ( - boardId: string, - boardOnboardingAgentCompleteBoardOnboardingAgentQuestion: - | BoardOnboardingAgentComplete - | BoardOnboardingAgentQuestion, - options?: RequestInit, -): Promise => { - return customFetch( - getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostUrl(boardId), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify( - boardOnboardingAgentCompleteBoardOnboardingAgentQuestion, - ), - }, - ); -}; - -export const getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { - boardId: string; - data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; - }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { - boardId: string; - data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; - }, - TContext - > => { - const mutationKey = [ - "updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost", - ]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited< - ReturnType - >, - { - boardId: string; - data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; - } - > = (props) => { - const { boardId, data } = props ?? {}; - - return updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost( - boardId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationBody = - | BoardOnboardingAgentComplete - | BoardOnboardingAgentQuestion; -export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationError = - HTTPValidationError; - -/** - * @summary Update Onboarding - */ -export const useUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPost = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { - boardId: string; - data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; - }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { - boardId: string; - data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; - }, - TContext -> => { - return useMutation( - getUpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationOptions( - options, - ), - queryClient, - ); -}; -/** - * @summary Nudge Agent - */ -export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse200 = - { - data: OkResponse; - status: 200; - }; - -export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseSuccess = - nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse200 & { - headers: Headers; - }; -export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseError = - nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse422 & { - headers: Headers; - }; - -export type nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponse = - | nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseSuccess - | nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostResponseError; - -export const getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostUrl = ( - boardId: string, - agentId: string, -) => { - return `/api/v1/agent/boards/${boardId}/agents/${agentId}/nudge`; -}; - -export const nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost = async ( - boardId: string, - agentId: string, - agentNudge: AgentNudge, - options?: RequestInit, -): Promise => { - return customFetch( - getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostUrl( - boardId, - agentId, - ), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(agentNudge), - }, - ); -}; - -export const getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost - > - >, - TError, - { boardId: string; agentId: string; data: AgentNudge }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; agentId: string; data: AgentNudge }, - TContext - > => { - const mutationKey = [ - "nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost", - ]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited< - ReturnType< - typeof nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost - > - >, - { boardId: string; agentId: string; data: AgentNudge } - > = (props) => { - const { boardId, agentId, data } = props ?? {}; - - return nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost( - boardId, - agentId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type NudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type NudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationBody = - AgentNudge; -export type NudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationError = - HTTPValidationError; - -/** - * @summary Nudge Agent - */ -export const useNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof nudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePost - > - >, - TError, - { boardId: string; agentId: string; data: AgentNudge }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { boardId: string; agentId: string; data: AgentNudge }, - TContext -> => { - return useMutation( - getNudgeAgentApiV1AgentBoardsBoardIdAgentsAgentIdNudgePostMutationOptions( - options, - ), - queryClient, - ); -}; /** * @summary Agent Heartbeat */ diff --git a/frontend/src/api/generated/agents/agents.ts b/frontend/src/api/generated/agents/agents.ts index e1ace2e7..342f6fe2 100644 --- a/frontend/src/api/generated/agents/agents.ts +++ b/frontend/src/api/generated/agents/agents.ts @@ -362,6 +362,133 @@ export const useCreateAgentApiV1AgentsPost = < queryClient, ); }; +/** + * @summary Heartbeat Or Create Agent + */ +export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse200 = { + data: AgentRead; + status: 200; +}; + +export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseSuccess = + heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse200 & { + headers: Headers; + }; +export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseError = + heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse422 & { + headers: Headers; + }; + +export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse = + | heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseSuccess + | heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseError; + +export const getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostUrl = () => { + return `/api/v1/agents/heartbeat`; +}; + +export const heartbeatOrCreateAgentApiV1AgentsHeartbeatPost = async ( + agentHeartbeatCreate: AgentHeartbeatCreate, + options?: RequestInit, +): Promise => { + return customFetch( + getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostUrl(), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(agentHeartbeatCreate), + }, + ); +}; + +export const getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { data: AgentHeartbeatCreate }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited>, + TError, + { data: AgentHeartbeatCreate }, + TContext + > => { + const mutationKey = ["heartbeatOrCreateAgentApiV1AgentsHeartbeatPost"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited< + ReturnType + >, + { data: AgentHeartbeatCreate } + > = (props) => { + const { data } = props ?? {}; + + return heartbeatOrCreateAgentApiV1AgentsHeartbeatPost( + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type HeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationResult = + NonNullable< + Awaited> + >; +export type HeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationBody = + AgentHeartbeatCreate; +export type HeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationError = + HTTPValidationError; + +/** + * @summary Heartbeat Or Create Agent + */ +export const useHeartbeatOrCreateAgentApiV1AgentsHeartbeatPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { data: AgentHeartbeatCreate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { data: AgentHeartbeatCreate }, + TContext +> => { + return useMutation( + getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationOptions(options), + queryClient, + ); +}; /** * @summary Stream Agents */ @@ -573,6 +700,122 @@ export function useStreamAgentsApiV1AgentsStreamGet< return { ...query, queryKey: queryOptions.queryKey }; } +/** + * @summary Delete Agent + */ +export type deleteAgentApiV1AgentsAgentIdDeleteResponse200 = { + data: OkResponse; + status: 200; +}; + +export type deleteAgentApiV1AgentsAgentIdDeleteResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type deleteAgentApiV1AgentsAgentIdDeleteResponseSuccess = + deleteAgentApiV1AgentsAgentIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteAgentApiV1AgentsAgentIdDeleteResponseError = + deleteAgentApiV1AgentsAgentIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteAgentApiV1AgentsAgentIdDeleteResponse = + | deleteAgentApiV1AgentsAgentIdDeleteResponseSuccess + | deleteAgentApiV1AgentsAgentIdDeleteResponseError; + +export const getDeleteAgentApiV1AgentsAgentIdDeleteUrl = (agentId: string) => { + return `/api/v1/agents/${agentId}`; +}; + +export const deleteAgentApiV1AgentsAgentIdDelete = async ( + agentId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteAgentApiV1AgentsAgentIdDeleteUrl(agentId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getDeleteAgentApiV1AgentsAgentIdDeleteMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { agentId: string }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { agentId: string }, + TContext +> => { + const mutationKey = ["deleteAgentApiV1AgentsAgentIdDelete"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited>, + { agentId: string } + > = (props) => { + const { agentId } = props ?? {}; + + return deleteAgentApiV1AgentsAgentIdDelete(agentId, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteAgentApiV1AgentsAgentIdDeleteMutationResult = NonNullable< + Awaited> +>; + +export type DeleteAgentApiV1AgentsAgentIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Delete Agent + */ +export const useDeleteAgentApiV1AgentsAgentIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { agentId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { agentId: string }, + TContext +> => { + return useMutation( + getDeleteAgentApiV1AgentsAgentIdDeleteMutationOptions(options), + queryClient, + ); +}; /** * @summary Get Agent */ @@ -932,122 +1175,6 @@ export const useUpdateAgentApiV1AgentsAgentIdPatch = < queryClient, ); }; -/** - * @summary Delete Agent - */ -export type deleteAgentApiV1AgentsAgentIdDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteAgentApiV1AgentsAgentIdDeleteResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type deleteAgentApiV1AgentsAgentIdDeleteResponseSuccess = - deleteAgentApiV1AgentsAgentIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteAgentApiV1AgentsAgentIdDeleteResponseError = - deleteAgentApiV1AgentsAgentIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteAgentApiV1AgentsAgentIdDeleteResponse = - | deleteAgentApiV1AgentsAgentIdDeleteResponseSuccess - | deleteAgentApiV1AgentsAgentIdDeleteResponseError; - -export const getDeleteAgentApiV1AgentsAgentIdDeleteUrl = (agentId: string) => { - return `/api/v1/agents/${agentId}`; -}; - -export const deleteAgentApiV1AgentsAgentIdDelete = async ( - agentId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteAgentApiV1AgentsAgentIdDeleteUrl(agentId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteAgentApiV1AgentsAgentIdDeleteMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { agentId: string }, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { agentId: string }, - TContext -> => { - const mutationKey = ["deleteAgentApiV1AgentsAgentIdDelete"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited>, - { agentId: string } - > = (props) => { - const { agentId } = props ?? {}; - - return deleteAgentApiV1AgentsAgentIdDelete(agentId, requestOptions); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteAgentApiV1AgentsAgentIdDeleteMutationResult = NonNullable< - Awaited> ->; - -export type DeleteAgentApiV1AgentsAgentIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Agent - */ -export const useDeleteAgentApiV1AgentsAgentIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { agentId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { agentId: string }, - TContext -> => { - return useMutation( - getDeleteAgentApiV1AgentsAgentIdDeleteMutationOptions(options), - queryClient, - ); -}; /** * @summary Heartbeat Agent */ @@ -1175,130 +1302,3 @@ export const useHeartbeatAgentApiV1AgentsAgentIdHeartbeatPost = < queryClient, ); }; -/** - * @summary Heartbeat Or Create Agent - */ -export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse200 = { - data: AgentRead; - status: 200; -}; - -export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseSuccess = - heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse200 & { - headers: Headers; - }; -export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseError = - heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse422 & { - headers: Headers; - }; - -export type heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponse = - | heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseSuccess - | heartbeatOrCreateAgentApiV1AgentsHeartbeatPostResponseError; - -export const getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostUrl = () => { - return `/api/v1/agents/heartbeat`; -}; - -export const heartbeatOrCreateAgentApiV1AgentsHeartbeatPost = async ( - agentHeartbeatCreate: AgentHeartbeatCreate, - options?: RequestInit, -): Promise => { - return customFetch( - getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostUrl(), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(agentHeartbeatCreate), - }, - ); -}; - -export const getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { data: AgentHeartbeatCreate }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited>, - TError, - { data: AgentHeartbeatCreate }, - TContext - > => { - const mutationKey = ["heartbeatOrCreateAgentApiV1AgentsHeartbeatPost"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited< - ReturnType - >, - { data: AgentHeartbeatCreate } - > = (props) => { - const { data } = props ?? {}; - - return heartbeatOrCreateAgentApiV1AgentsHeartbeatPost( - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type HeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationResult = - NonNullable< - Awaited> - >; -export type HeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationBody = - AgentHeartbeatCreate; -export type HeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationError = - HTTPValidationError; - -/** - * @summary Heartbeat Or Create Agent - */ -export const useHeartbeatOrCreateAgentApiV1AgentsHeartbeatPost = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { data: AgentHeartbeatCreate }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { data: AgentHeartbeatCreate }, - TContext -> => { - return useMutation( - getHeartbeatOrCreateAgentApiV1AgentsHeartbeatPostMutationOptions(options), - queryClient, - ); -}; diff --git a/frontend/src/api/generated/board-onboarding/board-onboarding.ts b/frontend/src/api/generated/board-onboarding/board-onboarding.ts index f063822b..e6b20a36 100644 --- a/frontend/src/api/generated/board-onboarding/board-onboarding.ts +++ b/frontend/src/api/generated/board-onboarding/board-onboarding.ts @@ -273,296 +273,6 @@ export function useGetOnboardingApiV1BoardsBoardIdOnboardingGet< return { ...query, queryKey: queryOptions.queryKey }; } -/** - * @summary Start Onboarding - */ -export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse200 = { - data: BoardOnboardingRead; - status: 200; -}; - -export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseSuccess = - startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse200 & { - headers: Headers; - }; -export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseError = - startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse422 & { - headers: Headers; - }; - -export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse = - | startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseSuccess - | startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseError; - -export const getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostUrl = ( - boardId: string, -) => { - return `/api/v1/boards/${boardId}/onboarding/start`; -}; - -export const startOnboardingApiV1BoardsBoardIdOnboardingStartPost = async ( - boardId: string, - boardOnboardingStart: BoardOnboardingStart, - options?: RequestInit, -): Promise => { - return customFetch( - getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostUrl(boardId), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(boardOnboardingStart), - }, - ); -}; - -export const getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardOnboardingStart }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardOnboardingStart }, - TContext - > => { - const mutationKey = [ - "startOnboardingApiV1BoardsBoardIdOnboardingStartPost", - ]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited< - ReturnType - >, - { boardId: string; data: BoardOnboardingStart } - > = (props) => { - const { boardId, data } = props ?? {}; - - return startOnboardingApiV1BoardsBoardIdOnboardingStartPost( - boardId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type StartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type StartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationBody = - BoardOnboardingStart; -export type StartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationError = - HTTPValidationError; - -/** - * @summary Start Onboarding - */ -export const useStartOnboardingApiV1BoardsBoardIdOnboardingStartPost = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardOnboardingStart }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardOnboardingStart }, - TContext -> => { - return useMutation( - getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationOptions( - options, - ), - queryClient, - ); -}; -/** - * @summary Answer Onboarding - */ -export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse200 = - { - data: BoardOnboardingRead; - status: 200; - }; - -export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseSuccess = - answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse200 & { - headers: Headers; - }; -export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseError = - answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse422 & { - headers: Headers; - }; - -export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse = - | answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseSuccess - | answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseError; - -export const getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostUrl = ( - boardId: string, -) => { - return `/api/v1/boards/${boardId}/onboarding/answer`; -}; - -export const answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost = async ( - boardId: string, - boardOnboardingAnswer: BoardOnboardingAnswer, - options?: RequestInit, -): Promise => { - return customFetch( - getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostUrl(boardId), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(boardOnboardingAnswer), - }, - ); -}; - -export const getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost - > - >, - TError, - { boardId: string; data: BoardOnboardingAnswer }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardOnboardingAnswer }, - TContext - > => { - const mutationKey = [ - "answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost", - ]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited< - ReturnType< - typeof answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost - > - >, - { boardId: string; data: BoardOnboardingAnswer } - > = (props) => { - const { boardId, data } = props ?? {}; - - return answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost( - boardId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type AnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type AnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationBody = - BoardOnboardingAnswer; -export type AnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationError = - HTTPValidationError; - -/** - * @summary Answer Onboarding - */ -export const useAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost - > - >, - TError, - { boardId: string; data: BoardOnboardingAnswer }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { boardId: string; data: BoardOnboardingAnswer }, - TContext -> => { - return useMutation( - getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationOptions( - options, - ), - queryClient, - ); -}; /** * @summary Agent Onboarding Update */ @@ -737,6 +447,155 @@ export const useAgentOnboardingUpdateApiV1BoardsBoardIdOnboardingAgentPost = < queryClient, ); }; +/** + * @summary Answer Onboarding + */ +export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse200 = + { + data: BoardOnboardingRead; + status: 200; + }; + +export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseSuccess = + answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse200 & { + headers: Headers; + }; +export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseError = + answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse422 & { + headers: Headers; + }; + +export type answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponse = + | answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseSuccess + | answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostResponseError; + +export const getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostUrl = ( + boardId: string, +) => { + return `/api/v1/boards/${boardId}/onboarding/answer`; +}; + +export const answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost = async ( + boardId: string, + boardOnboardingAnswer: BoardOnboardingAnswer, + options?: RequestInit, +): Promise => { + return customFetch( + getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostUrl(boardId), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(boardOnboardingAnswer), + }, + ); +}; + +export const getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost + > + >, + TError, + { boardId: string; data: BoardOnboardingAnswer }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardOnboardingAnswer }, + TContext + > => { + const mutationKey = [ + "answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost", + ]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited< + ReturnType< + typeof answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost + > + >, + { boardId: string; data: BoardOnboardingAnswer } + > = (props) => { + const { boardId, data } = props ?? {}; + + return answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost( + boardId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type AnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type AnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationBody = + BoardOnboardingAnswer; +export type AnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationError = + HTTPValidationError; + +/** + * @summary Answer Onboarding + */ +export const useAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof answerOnboardingApiV1BoardsBoardIdOnboardingAnswerPost + > + >, + TError, + { boardId: string; data: BoardOnboardingAnswer }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardOnboardingAnswer }, + TContext +> => { + return useMutation( + getAnswerOnboardingApiV1BoardsBoardIdOnboardingAnswerPostMutationOptions( + options, + ), + queryClient, + ); +}; /** * @summary Confirm Onboarding */ @@ -890,3 +749,144 @@ export const useConfirmOnboardingApiV1BoardsBoardIdOnboardingConfirmPost = < queryClient, ); }; +/** + * @summary Start Onboarding + */ +export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse200 = { + data: BoardOnboardingRead; + status: 200; +}; + +export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseSuccess = + startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse200 & { + headers: Headers; + }; +export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseError = + startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse422 & { + headers: Headers; + }; + +export type startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponse = + | startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseSuccess + | startOnboardingApiV1BoardsBoardIdOnboardingStartPostResponseError; + +export const getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostUrl = ( + boardId: string, +) => { + return `/api/v1/boards/${boardId}/onboarding/start`; +}; + +export const startOnboardingApiV1BoardsBoardIdOnboardingStartPost = async ( + boardId: string, + boardOnboardingStart: BoardOnboardingStart, + options?: RequestInit, +): Promise => { + return customFetch( + getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostUrl(boardId), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(boardOnboardingStart), + }, + ); +}; + +export const getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardOnboardingStart }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardOnboardingStart }, + TContext + > => { + const mutationKey = [ + "startOnboardingApiV1BoardsBoardIdOnboardingStartPost", + ]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited< + ReturnType + >, + { boardId: string; data: BoardOnboardingStart } + > = (props) => { + const { boardId, data } = props ?? {}; + + return startOnboardingApiV1BoardsBoardIdOnboardingStartPost( + boardId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type StartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type StartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationBody = + BoardOnboardingStart; +export type StartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationError = + HTTPValidationError; + +/** + * @summary Start Onboarding + */ +export const useStartOnboardingApiV1BoardsBoardIdOnboardingStartPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardOnboardingStart }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { boardId: string; data: BoardOnboardingStart }, + TContext +> => { + return useMutation( + getStartOnboardingApiV1BoardsBoardIdOnboardingStartPostMutationOptions( + options, + ), + queryClient, + ); +}; diff --git a/frontend/src/api/generated/boards/boards.ts b/frontend/src/api/generated/boards/boards.ts index 05e6f96f..b7fbaea9 100644 --- a/frontend/src/api/generated/boards/boards.ts +++ b/frontend/src/api/generated/boards/boards.ts @@ -359,6 +359,122 @@ export const useCreateBoardApiV1BoardsPost = < queryClient, ); }; +/** + * @summary Delete Board + */ +export type deleteBoardApiV1BoardsBoardIdDeleteResponse200 = { + data: OkResponse; + status: 200; +}; + +export type deleteBoardApiV1BoardsBoardIdDeleteResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type deleteBoardApiV1BoardsBoardIdDeleteResponseSuccess = + deleteBoardApiV1BoardsBoardIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteBoardApiV1BoardsBoardIdDeleteResponseError = + deleteBoardApiV1BoardsBoardIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteBoardApiV1BoardsBoardIdDeleteResponse = + | deleteBoardApiV1BoardsBoardIdDeleteResponseSuccess + | deleteBoardApiV1BoardsBoardIdDeleteResponseError; + +export const getDeleteBoardApiV1BoardsBoardIdDeleteUrl = (boardId: string) => { + return `/api/v1/boards/${boardId}`; +}; + +export const deleteBoardApiV1BoardsBoardIdDelete = async ( + boardId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteBoardApiV1BoardsBoardIdDeleteUrl(boardId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getDeleteBoardApiV1BoardsBoardIdDeleteMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { boardId: string }, + TContext +> => { + const mutationKey = ["deleteBoardApiV1BoardsBoardIdDelete"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited>, + { boardId: string } + > = (props) => { + const { boardId } = props ?? {}; + + return deleteBoardApiV1BoardsBoardIdDelete(boardId, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteBoardApiV1BoardsBoardIdDeleteMutationResult = NonNullable< + Awaited> +>; + +export type DeleteBoardApiV1BoardsBoardIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Delete Board + */ +export const useDeleteBoardApiV1BoardsBoardIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { boardId: string }, + TContext +> => { + return useMutation( + getDeleteBoardApiV1BoardsBoardIdDeleteMutationOptions(options), + queryClient, + ); +}; /** * @summary Get Board */ @@ -677,122 +793,6 @@ export const useUpdateBoardApiV1BoardsBoardIdPatch = < queryClient, ); }; -/** - * @summary Delete Board - */ -export type deleteBoardApiV1BoardsBoardIdDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteBoardApiV1BoardsBoardIdDeleteResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type deleteBoardApiV1BoardsBoardIdDeleteResponseSuccess = - deleteBoardApiV1BoardsBoardIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteBoardApiV1BoardsBoardIdDeleteResponseError = - deleteBoardApiV1BoardsBoardIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteBoardApiV1BoardsBoardIdDeleteResponse = - | deleteBoardApiV1BoardsBoardIdDeleteResponseSuccess - | deleteBoardApiV1BoardsBoardIdDeleteResponseError; - -export const getDeleteBoardApiV1BoardsBoardIdDeleteUrl = (boardId: string) => { - return `/api/v1/boards/${boardId}`; -}; - -export const deleteBoardApiV1BoardsBoardIdDelete = async ( - boardId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteBoardApiV1BoardsBoardIdDeleteUrl(boardId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteBoardApiV1BoardsBoardIdDeleteMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { boardId: string }, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { boardId: string }, - TContext -> => { - const mutationKey = ["deleteBoardApiV1BoardsBoardIdDelete"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited>, - { boardId: string } - > = (props) => { - const { boardId } = props ?? {}; - - return deleteBoardApiV1BoardsBoardIdDelete(boardId, requestOptions); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteBoardApiV1BoardsBoardIdDeleteMutationResult = NonNullable< - Awaited> ->; - -export type DeleteBoardApiV1BoardsBoardIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Board - */ -export const useDeleteBoardApiV1BoardsBoardIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { boardId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { boardId: string }, - TContext -> => { - return useMutation( - getDeleteBoardApiV1BoardsBoardIdDeleteMutationOptions(options), - queryClient, - ); -}; /** * @summary Get Board Snapshot */ diff --git a/frontend/src/api/generated/gateways/gateways.ts b/frontend/src/api/generated/gateways/gateways.ts index 1def48f4..f5163b87 100644 --- a/frontend/src/api/generated/gateways/gateways.ts +++ b/frontend/src/api/generated/gateways/gateways.ts @@ -46,33 +46,33 @@ import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; /** - * @summary Gateways Status + * @summary List Gateways */ -export type gatewaysStatusApiV1GatewaysStatusGetResponse200 = { - data: GatewaysStatusResponse; +export type listGatewaysApiV1GatewaysGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedGatewayRead; status: 200; }; -export type gatewaysStatusApiV1GatewaysStatusGetResponse422 = { +export type listGatewaysApiV1GatewaysGetResponse422 = { data: HTTPValidationError; status: 422; }; -export type gatewaysStatusApiV1GatewaysStatusGetResponseSuccess = - gatewaysStatusApiV1GatewaysStatusGetResponse200 & { +export type listGatewaysApiV1GatewaysGetResponseSuccess = + listGatewaysApiV1GatewaysGetResponse200 & { headers: Headers; }; -export type gatewaysStatusApiV1GatewaysStatusGetResponseError = - gatewaysStatusApiV1GatewaysStatusGetResponse422 & { +export type listGatewaysApiV1GatewaysGetResponseError = + listGatewaysApiV1GatewaysGetResponse422 & { headers: Headers; }; -export type gatewaysStatusApiV1GatewaysStatusGetResponse = - | gatewaysStatusApiV1GatewaysStatusGetResponseSuccess - | gatewaysStatusApiV1GatewaysStatusGetResponseError; +export type listGatewaysApiV1GatewaysGetResponse = + | listGatewaysApiV1GatewaysGetResponseSuccess + | listGatewaysApiV1GatewaysGetResponseError; -export const getGatewaysStatusApiV1GatewaysStatusGetUrl = ( - params?: GatewaysStatusApiV1GatewaysStatusGetParams, +export const getListGatewaysApiV1GatewaysGetUrl = ( + params?: ListGatewaysApiV1GatewaysGetParams, ) => { const normalizedParams = new URLSearchParams(); @@ -85,16 +85,16 @@ export const getGatewaysStatusApiV1GatewaysStatusGetUrl = ( const stringifiedParams = normalizedParams.toString(); return stringifiedParams.length > 0 - ? `/api/v1/gateways/status?${stringifiedParams}` - : `/api/v1/gateways/status`; + ? `/api/v1/gateways?${stringifiedParams}` + : `/api/v1/gateways`; }; -export const gatewaysStatusApiV1GatewaysStatusGet = async ( - params?: GatewaysStatusApiV1GatewaysStatusGetParams, +export const listGatewaysApiV1GatewaysGet = async ( + params?: ListGatewaysApiV1GatewaysGetParams, options?: RequestInit, -): Promise => { - return customFetch( - getGatewaysStatusApiV1GatewaysStatusGetUrl(params), +): Promise => { + return customFetch( + getListGatewaysApiV1GatewaysGetUrl(params), { ...options, method: "GET", @@ -102,21 +102,21 @@ export const gatewaysStatusApiV1GatewaysStatusGet = async ( ); }; -export const getGatewaysStatusApiV1GatewaysStatusGetQueryKey = ( - params?: GatewaysStatusApiV1GatewaysStatusGetParams, +export const getListGatewaysApiV1GatewaysGetQueryKey = ( + params?: ListGatewaysApiV1GatewaysGetParams, ) => { - return [`/api/v1/gateways/status`, ...(params ? [params] : [])] as const; + return [`/api/v1/gateways`, ...(params ? [params] : [])] as const; }; -export const getGatewaysStatusApiV1GatewaysStatusGetQueryOptions = < - TData = Awaited>, +export const getListGatewaysApiV1GatewaysGetQueryOptions = < + TData = Awaited>, TError = HTTPValidationError, >( - params?: GatewaysStatusApiV1GatewaysStatusGetParams, + params?: ListGatewaysApiV1GatewaysGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -127,45 +127,43 @@ export const getGatewaysStatusApiV1GatewaysStatusGetQueryOptions = < const { query: queryOptions, request: requestOptions } = options ?? {}; const queryKey = - queryOptions?.queryKey ?? - getGatewaysStatusApiV1GatewaysStatusGetQueryKey(params); + queryOptions?.queryKey ?? getListGatewaysApiV1GatewaysGetQueryKey(params); const queryFn: QueryFunction< - Awaited> + Awaited> > = ({ signal }) => - gatewaysStatusApiV1GatewaysStatusGet(params, { signal, ...requestOptions }); + listGatewaysApiV1GatewaysGet(params, { signal, ...requestOptions }); return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, + Awaited>, TError, TData > & { queryKey: DataTag }; }; -export type GatewaysStatusApiV1GatewaysStatusGetQueryResult = NonNullable< - Awaited> +export type ListGatewaysApiV1GatewaysGetQueryResult = NonNullable< + Awaited> >; -export type GatewaysStatusApiV1GatewaysStatusGetQueryError = - HTTPValidationError; +export type ListGatewaysApiV1GatewaysGetQueryError = HTTPValidationError; -export function useGatewaysStatusApiV1GatewaysStatusGet< - TData = Awaited>, +export function useListGatewaysApiV1GatewaysGet< + TData = Awaited>, TError = HTTPValidationError, >( - params: undefined | GatewaysStatusApiV1GatewaysStatusGetParams, + params: undefined | ListGatewaysApiV1GatewaysGetParams, options: { query: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< DefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -175,24 +173,24 @@ export function useGatewaysStatusApiV1GatewaysStatusGet< ): DefinedUseQueryResult & { queryKey: DataTag; }; -export function useGatewaysStatusApiV1GatewaysStatusGet< - TData = Awaited>, +export function useListGatewaysApiV1GatewaysGet< + TData = Awaited>, TError = HTTPValidationError, >( - params?: GatewaysStatusApiV1GatewaysStatusGetParams, + params?: ListGatewaysApiV1GatewaysGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< UndefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -202,15 +200,15 @@ export function useGatewaysStatusApiV1GatewaysStatusGet< ): UseQueryResult & { queryKey: DataTag; }; -export function useGatewaysStatusApiV1GatewaysStatusGet< - TData = Awaited>, +export function useListGatewaysApiV1GatewaysGet< + TData = Awaited>, TError = HTTPValidationError, >( - params?: GatewaysStatusApiV1GatewaysStatusGetParams, + params?: ListGatewaysApiV1GatewaysGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -222,18 +220,18 @@ export function useGatewaysStatusApiV1GatewaysStatusGet< queryKey: DataTag; }; /** - * @summary Gateways Status + * @summary List Gateways */ -export function useGatewaysStatusApiV1GatewaysStatusGet< - TData = Awaited>, +export function useListGatewaysApiV1GatewaysGet< + TData = Awaited>, TError = HTTPValidationError, >( - params?: GatewaysStatusApiV1GatewaysStatusGetParams, + params?: ListGatewaysApiV1GatewaysGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -244,7 +242,7 @@ export function useGatewaysStatusApiV1GatewaysStatusGet< ): UseQueryResult & { queryKey: DataTag; } { - const queryOptions = getGatewaysStatusApiV1GatewaysStatusGetQueryOptions( + const queryOptions = getListGatewaysApiV1GatewaysGetQueryOptions( params, options, ); @@ -257,6 +255,297 @@ export function useGatewaysStatusApiV1GatewaysStatusGet< return { ...query, queryKey: queryOptions.queryKey }; } +/** + * @summary Create Gateway + */ +export type createGatewayApiV1GatewaysPostResponse200 = { + data: GatewayRead; + status: 200; +}; + +export type createGatewayApiV1GatewaysPostResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type createGatewayApiV1GatewaysPostResponseSuccess = + createGatewayApiV1GatewaysPostResponse200 & { + headers: Headers; + }; +export type createGatewayApiV1GatewaysPostResponseError = + createGatewayApiV1GatewaysPostResponse422 & { + headers: Headers; + }; + +export type createGatewayApiV1GatewaysPostResponse = + | createGatewayApiV1GatewaysPostResponseSuccess + | createGatewayApiV1GatewaysPostResponseError; + +export const getCreateGatewayApiV1GatewaysPostUrl = () => { + return `/api/v1/gateways`; +}; + +export const createGatewayApiV1GatewaysPost = async ( + gatewayCreate: GatewayCreate, + options?: RequestInit, +): Promise => { + return customFetch( + getCreateGatewayApiV1GatewaysPostUrl(), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(gatewayCreate), + }, + ); +}; + +export const getCreateGatewayApiV1GatewaysPostMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: GatewayCreate }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { data: GatewayCreate }, + TContext +> => { + const mutationKey = ["createGatewayApiV1GatewaysPost"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited>, + { data: GatewayCreate } + > = (props) => { + const { data } = props ?? {}; + + return createGatewayApiV1GatewaysPost(data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type CreateGatewayApiV1GatewaysPostMutationResult = NonNullable< + Awaited> +>; +export type CreateGatewayApiV1GatewaysPostMutationBody = GatewayCreate; +export type CreateGatewayApiV1GatewaysPostMutationError = HTTPValidationError; + +/** + * @summary Create Gateway + */ +export const useCreateGatewayApiV1GatewaysPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: GatewayCreate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { data: GatewayCreate }, + TContext +> => { + return useMutation( + getCreateGatewayApiV1GatewaysPostMutationOptions(options), + queryClient, + ); +}; +/** + * @summary Gateway Commands + */ +export type gatewayCommandsApiV1GatewaysCommandsGetResponse200 = { + data: GatewayCommandsResponse; + status: 200; +}; + +export type gatewayCommandsApiV1GatewaysCommandsGetResponseSuccess = + gatewayCommandsApiV1GatewaysCommandsGetResponse200 & { + headers: Headers; + }; +export type gatewayCommandsApiV1GatewaysCommandsGetResponse = + gatewayCommandsApiV1GatewaysCommandsGetResponseSuccess; + +export const getGatewayCommandsApiV1GatewaysCommandsGetUrl = () => { + return `/api/v1/gateways/commands`; +}; + +export const gatewayCommandsApiV1GatewaysCommandsGet = async ( + options?: RequestInit, +): Promise => { + return customFetch( + getGatewayCommandsApiV1GatewaysCommandsGetUrl(), + { + ...options, + method: "GET", + }, + ); +}; + +export const getGatewayCommandsApiV1GatewaysCommandsGetQueryKey = () => { + return [`/api/v1/gateways/commands`] as const; +}; + +export const getGatewayCommandsApiV1GatewaysCommandsGetQueryOptions = < + TData = Awaited>, + TError = unknown, +>(options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; +}) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getGatewayCommandsApiV1GatewaysCommandsGetQueryKey(); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + gatewayCommandsApiV1GatewaysCommandsGet({ signal, ...requestOptions }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type GatewayCommandsApiV1GatewaysCommandsGetQueryResult = NonNullable< + Awaited> +>; +export type GatewayCommandsApiV1GatewaysCommandsGetQueryError = unknown; + +export function useGatewayCommandsApiV1GatewaysCommandsGet< + TData = Awaited>, + TError = unknown, +>( + options: { + query: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited>, + TError, + Awaited> + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useGatewayCommandsApiV1GatewaysCommandsGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited>, + TError, + Awaited> + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useGatewayCommandsApiV1GatewaysCommandsGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Gateway Commands + */ + +export function useGatewayCommandsApiV1GatewaysCommandsGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getGatewayCommandsApiV1GatewaysCommandsGetQueryOptions(options); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + /** * @summary List Gateway Sessions */ @@ -1276,207 +1565,33 @@ export const useSendGatewaySessionMessageApiV1GatewaysSessionsSessionIdMessagePo ); }; /** - * @summary Gateway Commands + * @summary Gateways Status */ -export type gatewayCommandsApiV1GatewaysCommandsGetResponse200 = { - data: GatewayCommandsResponse; +export type gatewaysStatusApiV1GatewaysStatusGetResponse200 = { + data: GatewaysStatusResponse; status: 200; }; -export type gatewayCommandsApiV1GatewaysCommandsGetResponseSuccess = - gatewayCommandsApiV1GatewaysCommandsGetResponse200 & { - headers: Headers; - }; -export type gatewayCommandsApiV1GatewaysCommandsGetResponse = - gatewayCommandsApiV1GatewaysCommandsGetResponseSuccess; - -export const getGatewayCommandsApiV1GatewaysCommandsGetUrl = () => { - return `/api/v1/gateways/commands`; -}; - -export const gatewayCommandsApiV1GatewaysCommandsGet = async ( - options?: RequestInit, -): Promise => { - return customFetch( - getGatewayCommandsApiV1GatewaysCommandsGetUrl(), - { - ...options, - method: "GET", - }, - ); -}; - -export const getGatewayCommandsApiV1GatewaysCommandsGetQueryKey = () => { - return [`/api/v1/gateways/commands`] as const; -}; - -export const getGatewayCommandsApiV1GatewaysCommandsGetQueryOptions = < - TData = Awaited>, - TError = unknown, ->(options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; -}) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getGatewayCommandsApiV1GatewaysCommandsGetQueryKey(); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - gatewayCommandsApiV1GatewaysCommandsGet({ signal, ...requestOptions }); - - return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type GatewayCommandsApiV1GatewaysCommandsGetQueryResult = NonNullable< - Awaited> ->; -export type GatewayCommandsApiV1GatewaysCommandsGetQueryError = unknown; - -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, ->( - options: { - query: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - > & - Pick< - DefinedInitialDataOptions< - Awaited>, - TError, - Awaited> - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): DefinedUseQueryResult & { - queryKey: DataTag; -}; -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, ->( - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - > & - Pick< - UndefinedInitialDataOptions< - Awaited>, - TError, - Awaited> - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, ->( - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary Gateway Commands - */ - -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, ->( - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getGatewayCommandsApiV1GatewaysCommandsGetQueryOptions(options); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * @summary List Gateways - */ -export type listGatewaysApiV1GatewaysGetResponse200 = { - data: LimitOffsetPageTypeVarCustomizedGatewayRead; - status: 200; -}; - -export type listGatewaysApiV1GatewaysGetResponse422 = { +export type gatewaysStatusApiV1GatewaysStatusGetResponse422 = { data: HTTPValidationError; status: 422; }; -export type listGatewaysApiV1GatewaysGetResponseSuccess = - listGatewaysApiV1GatewaysGetResponse200 & { +export type gatewaysStatusApiV1GatewaysStatusGetResponseSuccess = + gatewaysStatusApiV1GatewaysStatusGetResponse200 & { headers: Headers; }; -export type listGatewaysApiV1GatewaysGetResponseError = - listGatewaysApiV1GatewaysGetResponse422 & { +export type gatewaysStatusApiV1GatewaysStatusGetResponseError = + gatewaysStatusApiV1GatewaysStatusGetResponse422 & { headers: Headers; }; -export type listGatewaysApiV1GatewaysGetResponse = - | listGatewaysApiV1GatewaysGetResponseSuccess - | listGatewaysApiV1GatewaysGetResponseError; +export type gatewaysStatusApiV1GatewaysStatusGetResponse = + | gatewaysStatusApiV1GatewaysStatusGetResponseSuccess + | gatewaysStatusApiV1GatewaysStatusGetResponseError; -export const getListGatewaysApiV1GatewaysGetUrl = ( - params?: ListGatewaysApiV1GatewaysGetParams, +export const getGatewaysStatusApiV1GatewaysStatusGetUrl = ( + params?: GatewaysStatusApiV1GatewaysStatusGetParams, ) => { const normalizedParams = new URLSearchParams(); @@ -1489,16 +1604,16 @@ export const getListGatewaysApiV1GatewaysGetUrl = ( const stringifiedParams = normalizedParams.toString(); return stringifiedParams.length > 0 - ? `/api/v1/gateways?${stringifiedParams}` - : `/api/v1/gateways`; + ? `/api/v1/gateways/status?${stringifiedParams}` + : `/api/v1/gateways/status`; }; -export const listGatewaysApiV1GatewaysGet = async ( - params?: ListGatewaysApiV1GatewaysGetParams, +export const gatewaysStatusApiV1GatewaysStatusGet = async ( + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: RequestInit, -): Promise => { - return customFetch( - getListGatewaysApiV1GatewaysGetUrl(params), +): Promise => { + return customFetch( + getGatewaysStatusApiV1GatewaysStatusGetUrl(params), { ...options, method: "GET", @@ -1506,21 +1621,21 @@ export const listGatewaysApiV1GatewaysGet = async ( ); }; -export const getListGatewaysApiV1GatewaysGetQueryKey = ( - params?: ListGatewaysApiV1GatewaysGetParams, +export const getGatewaysStatusApiV1GatewaysStatusGetQueryKey = ( + params?: GatewaysStatusApiV1GatewaysStatusGetParams, ) => { - return [`/api/v1/gateways`, ...(params ? [params] : [])] as const; + return [`/api/v1/gateways/status`, ...(params ? [params] : [])] as const; }; -export const getListGatewaysApiV1GatewaysGetQueryOptions = < - TData = Awaited>, +export const getGatewaysStatusApiV1GatewaysStatusGetQueryOptions = < + TData = Awaited>, TError = HTTPValidationError, >( - params?: ListGatewaysApiV1GatewaysGetParams, + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -1531,43 +1646,45 @@ export const getListGatewaysApiV1GatewaysGetQueryOptions = < const { query: queryOptions, request: requestOptions } = options ?? {}; const queryKey = - queryOptions?.queryKey ?? getListGatewaysApiV1GatewaysGetQueryKey(params); + queryOptions?.queryKey ?? + getGatewaysStatusApiV1GatewaysStatusGetQueryKey(params); const queryFn: QueryFunction< - Awaited> + Awaited> > = ({ signal }) => - listGatewaysApiV1GatewaysGet(params, { signal, ...requestOptions }); + gatewaysStatusApiV1GatewaysStatusGet(params, { signal, ...requestOptions }); return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, + Awaited>, TError, TData > & { queryKey: DataTag }; }; -export type ListGatewaysApiV1GatewaysGetQueryResult = NonNullable< - Awaited> +export type GatewaysStatusApiV1GatewaysStatusGetQueryResult = NonNullable< + Awaited> >; -export type ListGatewaysApiV1GatewaysGetQueryError = HTTPValidationError; +export type GatewaysStatusApiV1GatewaysStatusGetQueryError = + HTTPValidationError; -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, TError = HTTPValidationError, >( - params: undefined | ListGatewaysApiV1GatewaysGetParams, + params: undefined | GatewaysStatusApiV1GatewaysStatusGetParams, options: { query: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< DefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -1577,24 +1694,24 @@ export function useListGatewaysApiV1GatewaysGet< ): DefinedUseQueryResult & { queryKey: DataTag; }; -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, TError = HTTPValidationError, >( - params?: ListGatewaysApiV1GatewaysGetParams, + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< UndefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -1604,15 +1721,15 @@ export function useListGatewaysApiV1GatewaysGet< ): UseQueryResult & { queryKey: DataTag; }; -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, TError = HTTPValidationError, >( - params?: ListGatewaysApiV1GatewaysGetParams, + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -1624,18 +1741,18 @@ export function useListGatewaysApiV1GatewaysGet< queryKey: DataTag; }; /** - * @summary List Gateways + * @summary Gateways Status */ -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, TError = HTTPValidationError, >( - params?: ListGatewaysApiV1GatewaysGetParams, + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -1646,7 +1763,7 @@ export function useListGatewaysApiV1GatewaysGet< ): UseQueryResult & { queryKey: DataTag; } { - const queryOptions = getListGatewaysApiV1GatewaysGetQueryOptions( + const queryOptions = getGatewaysStatusApiV1GatewaysStatusGetQueryOptions( params, options, ); @@ -1660,68 +1777,68 @@ export function useListGatewaysApiV1GatewaysGet< } /** - * @summary Create Gateway + * @summary Delete Gateway */ -export type createGatewayApiV1GatewaysPostResponse200 = { - data: GatewayRead; +export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse200 = { + data: OkResponse; status: 200; }; -export type createGatewayApiV1GatewaysPostResponse422 = { +export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse422 = { data: HTTPValidationError; status: 422; }; -export type createGatewayApiV1GatewaysPostResponseSuccess = - createGatewayApiV1GatewaysPostResponse200 & { +export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponseSuccess = + deleteGatewayApiV1GatewaysGatewayIdDeleteResponse200 & { headers: Headers; }; -export type createGatewayApiV1GatewaysPostResponseError = - createGatewayApiV1GatewaysPostResponse422 & { +export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponseError = + deleteGatewayApiV1GatewaysGatewayIdDeleteResponse422 & { headers: Headers; }; -export type createGatewayApiV1GatewaysPostResponse = - | createGatewayApiV1GatewaysPostResponseSuccess - | createGatewayApiV1GatewaysPostResponseError; +export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse = + | deleteGatewayApiV1GatewaysGatewayIdDeleteResponseSuccess + | deleteGatewayApiV1GatewaysGatewayIdDeleteResponseError; -export const getCreateGatewayApiV1GatewaysPostUrl = () => { - return `/api/v1/gateways`; +export const getDeleteGatewayApiV1GatewaysGatewayIdDeleteUrl = ( + gatewayId: string, +) => { + return `/api/v1/gateways/${gatewayId}`; }; -export const createGatewayApiV1GatewaysPost = async ( - gatewayCreate: GatewayCreate, +export const deleteGatewayApiV1GatewaysGatewayIdDelete = async ( + gatewayId: string, options?: RequestInit, -): Promise => { - return customFetch( - getCreateGatewayApiV1GatewaysPostUrl(), +): Promise => { + return customFetch( + getDeleteGatewayApiV1GatewaysGatewayIdDeleteUrl(gatewayId), { ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(gatewayCreate), + method: "DELETE", }, ); }; -export const getCreateGatewayApiV1GatewaysPostMutationOptions = < +export const getDeleteGatewayApiV1GatewaysGatewayIdDeleteMutationOptions = < TError = HTTPValidationError, TContext = unknown, >(options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - { data: GatewayCreate }, + { gatewayId: string }, TContext >; request?: SecondParameter; }): UseMutationOptions< - Awaited>, + Awaited>, TError, - { data: GatewayCreate }, + { gatewayId: string }, TContext > => { - const mutationKey = ["createGatewayApiV1GatewaysPost"]; + const mutationKey = ["deleteGatewayApiV1GatewaysGatewayIdDelete"]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && "mutationKey" in options.mutation && @@ -1731,48 +1848,50 @@ export const getCreateGatewayApiV1GatewaysPostMutationOptions = < : { mutation: { mutationKey }, request: undefined }; const mutationFn: MutationFunction< - Awaited>, - { data: GatewayCreate } + Awaited>, + { gatewayId: string } > = (props) => { - const { data } = props ?? {}; + const { gatewayId } = props ?? {}; - return createGatewayApiV1GatewaysPost(data, requestOptions); + return deleteGatewayApiV1GatewaysGatewayIdDelete(gatewayId, requestOptions); }; return { mutationFn, ...mutationOptions }; }; -export type CreateGatewayApiV1GatewaysPostMutationResult = NonNullable< - Awaited> ->; -export type CreateGatewayApiV1GatewaysPostMutationBody = GatewayCreate; -export type CreateGatewayApiV1GatewaysPostMutationError = HTTPValidationError; +export type DeleteGatewayApiV1GatewaysGatewayIdDeleteMutationResult = + NonNullable< + Awaited> + >; + +export type DeleteGatewayApiV1GatewaysGatewayIdDeleteMutationError = + HTTPValidationError; /** - * @summary Create Gateway + * @summary Delete Gateway */ -export const useCreateGatewayApiV1GatewaysPost = < +export const useDeleteGatewayApiV1GatewaysGatewayIdDelete = < TError = HTTPValidationError, TContext = unknown, >( options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - { data: GatewayCreate }, + { gatewayId: string }, TContext >; request?: SecondParameter; }, queryClient?: QueryClient, ): UseMutationResult< - Awaited>, + Awaited>, TError, - { data: GatewayCreate }, + { gatewayId: string }, TContext > => { return useMutation( - getCreateGatewayApiV1GatewaysPostMutationOptions(options), + getDeleteGatewayApiV1GatewaysGatewayIdDeleteMutationOptions(options), queryClient, ); }; @@ -2110,122 +2229,3 @@ export const useUpdateGatewayApiV1GatewaysGatewayIdPatch = < queryClient, ); }; -/** - * @summary Delete Gateway - */ -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponseSuccess = - deleteGatewayApiV1GatewaysGatewayIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponseError = - deleteGatewayApiV1GatewaysGatewayIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse = - | deleteGatewayApiV1GatewaysGatewayIdDeleteResponseSuccess - | deleteGatewayApiV1GatewaysGatewayIdDeleteResponseError; - -export const getDeleteGatewayApiV1GatewaysGatewayIdDeleteUrl = ( - gatewayId: string, -) => { - return `/api/v1/gateways/${gatewayId}`; -}; - -export const deleteGatewayApiV1GatewaysGatewayIdDelete = async ( - gatewayId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteGatewayApiV1GatewaysGatewayIdDeleteUrl(gatewayId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteGatewayApiV1GatewaysGatewayIdDeleteMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { gatewayId: string }, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { gatewayId: string }, - TContext -> => { - const mutationKey = ["deleteGatewayApiV1GatewaysGatewayIdDelete"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited>, - { gatewayId: string } - > = (props) => { - const { gatewayId } = props ?? {}; - - return deleteGatewayApiV1GatewaysGatewayIdDelete(gatewayId, requestOptions); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteGatewayApiV1GatewaysGatewayIdDeleteMutationResult = - NonNullable< - Awaited> - >; - -export type DeleteGatewayApiV1GatewaysGatewayIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Gateway - */ -export const useDeleteGatewayApiV1GatewaysGatewayIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { gatewayId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { gatewayId: string }, - TContext -> => { - return useMutation( - getDeleteGatewayApiV1GatewaysGatewayIdDeleteMutationOptions(options), - queryClient, - ); -}; diff --git a/frontend/src/api/generated/model/activityEventRead.ts b/frontend/src/api/generated/model/activityEventRead.ts index 18e1e8c5..f934e629 100644 --- a/frontend/src/api/generated/model/activityEventRead.ts +++ b/frontend/src/api/generated/model/activityEventRead.ts @@ -6,10 +6,10 @@ */ export interface ActivityEventRead { - id: string; - event_type: string; - message: string | null; agent_id: string | null; - task_id: string | null; created_at: string; + event_type: string; + id: string; + message: string | null; + task_id: string | null; } diff --git a/frontend/src/api/generated/model/agentCreate.ts b/frontend/src/api/generated/model/agentCreate.ts index 5a9d0876..ba595e4f 100644 --- a/frontend/src/api/generated/model/agentCreate.ts +++ b/frontend/src/api/generated/model/agentCreate.ts @@ -9,11 +9,11 @@ import type { AgentCreateIdentityProfile } from "./agentCreateIdentityProfile"; export interface AgentCreate { board_id?: string | null; - /** @minLength 1 */ - name: string; - status?: string; heartbeat_config?: AgentCreateHeartbeatConfig; identity_profile?: AgentCreateIdentityProfile; identity_template?: string | null; + /** @minLength 1 */ + name: string; soul_template?: string | null; + status?: string; } diff --git a/frontend/src/api/generated/model/agentHeartbeatCreate.ts b/frontend/src/api/generated/model/agentHeartbeatCreate.ts index 29283425..6acc8726 100644 --- a/frontend/src/api/generated/model/agentHeartbeatCreate.ts +++ b/frontend/src/api/generated/model/agentHeartbeatCreate.ts @@ -6,8 +6,8 @@ */ export interface AgentHeartbeatCreate { - status?: string | null; + board_id?: string | null; /** @minLength 1 */ name: string; - board_id?: string | null; + status?: string | null; } diff --git a/frontend/src/api/generated/model/agentRead.ts b/frontend/src/api/generated/model/agentRead.ts index 9cf0df4e..8d67d28b 100644 --- a/frontend/src/api/generated/model/agentRead.ts +++ b/frontend/src/api/generated/model/agentRead.ts @@ -9,18 +9,18 @@ import type { AgentReadIdentityProfile } from "./agentReadIdentityProfile"; export interface AgentRead { board_id?: string | null; - /** @minLength 1 */ - name: string; - status?: string; + created_at: string; heartbeat_config?: AgentReadHeartbeatConfig; + id: string; identity_profile?: AgentReadIdentityProfile; identity_template?: string | null; - soul_template?: string | null; - id: string; is_board_lead?: boolean; is_gateway_main?: boolean; - openclaw_session_id?: string | null; last_seen_at: string | null; - created_at: string; + /** @minLength 1 */ + name: string; + openclaw_session_id?: string | null; + soul_template?: string | null; + status?: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/agentUpdate.ts b/frontend/src/api/generated/model/agentUpdate.ts index 73f74045..baa21d7c 100644 --- a/frontend/src/api/generated/model/agentUpdate.ts +++ b/frontend/src/api/generated/model/agentUpdate.ts @@ -9,11 +9,11 @@ import type { AgentUpdateIdentityProfile } from "./agentUpdateIdentityProfile"; export interface AgentUpdate { board_id?: string | null; - is_gateway_main?: boolean | null; - name?: string | null; - status?: string | null; heartbeat_config?: AgentUpdateHeartbeatConfig; identity_profile?: AgentUpdateIdentityProfile; identity_template?: string | null; + is_gateway_main?: boolean | null; + name?: string | null; soul_template?: string | null; + status?: string | null; } diff --git a/frontend/src/api/generated/model/approvalCreate.ts b/frontend/src/api/generated/model/approvalCreate.ts index 3172f0a2..e16a5eed 100644 --- a/frontend/src/api/generated/model/approvalCreate.ts +++ b/frontend/src/api/generated/model/approvalCreate.ts @@ -10,10 +10,10 @@ import type { ApprovalCreateStatus } from "./approvalCreateStatus"; export interface ApprovalCreate { action_type: string; - task_id?: string | null; - payload?: ApprovalCreatePayload; + agent_id?: string | null; confidence: number; + payload?: ApprovalCreatePayload; rubric_scores?: ApprovalCreateRubricScores; status?: ApprovalCreateStatus; - agent_id?: string | null; + task_id?: string | null; } diff --git a/frontend/src/api/generated/model/approvalRead.ts b/frontend/src/api/generated/model/approvalRead.ts index 8049d94e..11ca482c 100644 --- a/frontend/src/api/generated/model/approvalRead.ts +++ b/frontend/src/api/generated/model/approvalRead.ts @@ -10,14 +10,14 @@ import type { ApprovalReadStatus } from "./approvalReadStatus"; export interface ApprovalRead { action_type: string; - task_id?: string | null; - payload?: ApprovalReadPayload; + agent_id?: string | null; + board_id: string; confidence: number; + created_at: string; + id: string; + payload?: ApprovalReadPayload; + resolved_at?: string | null; rubric_scores?: ApprovalReadRubricScores; status?: ApprovalReadStatus; - id: string; - board_id: string; - agent_id?: string | null; - created_at: string; - resolved_at?: string | null; + task_id?: string | null; } diff --git a/frontend/src/api/generated/model/boardCreate.ts b/frontend/src/api/generated/model/boardCreate.ts index 51a1425a..e0b5f796 100644 --- a/frontend/src/api/generated/model/boardCreate.ts +++ b/frontend/src/api/generated/model/boardCreate.ts @@ -7,13 +7,13 @@ import type { BoardCreateSuccessMetrics } from "./boardCreateSuccessMetrics"; export interface BoardCreate { - name: string; - slug: string; - gateway_id: string; board_type?: string; - objective?: string | null; - success_metrics?: BoardCreateSuccessMetrics; - target_date?: string | null; + gateway_id: string; goal_confirmed?: boolean; goal_source?: string | null; + name: string; + objective?: string | null; + slug: string; + success_metrics?: BoardCreateSuccessMetrics; + target_date?: string | null; } diff --git a/frontend/src/api/generated/model/boardMemoryCreate.ts b/frontend/src/api/generated/model/boardMemoryCreate.ts index 1aff6e46..71abb847 100644 --- a/frontend/src/api/generated/model/boardMemoryCreate.ts +++ b/frontend/src/api/generated/model/boardMemoryCreate.ts @@ -8,6 +8,6 @@ export interface BoardMemoryCreate { /** @minLength 1 */ content: string; - tags?: string[] | null; source?: string | null; + tags?: string[] | null; } diff --git a/frontend/src/api/generated/model/boardMemoryRead.ts b/frontend/src/api/generated/model/boardMemoryRead.ts index ea198c3d..fa19edcc 100644 --- a/frontend/src/api/generated/model/boardMemoryRead.ts +++ b/frontend/src/api/generated/model/boardMemoryRead.ts @@ -6,12 +6,11 @@ */ export interface BoardMemoryRead { - /** @minLength 1 */ - content: string; - tags?: string[] | null; - source?: string | null; - id: string; board_id: string; - is_chat?: boolean; + content: string; created_at: string; + id: string; + is_chat?: boolean; + source?: string | null; + tags?: string[] | null; } diff --git a/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts b/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts index faa846da..3228d287 100644 --- a/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts +++ b/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts @@ -5,11 +5,15 @@ * OpenAPI spec version: 0.1.0 */ import type { BoardOnboardingAgentCompleteSuccessMetrics } from "./boardOnboardingAgentCompleteSuccessMetrics"; +import type { BoardOnboardingLeadAgentDraft } from "./boardOnboardingLeadAgentDraft"; +import type { BoardOnboardingUserProfile } from "./boardOnboardingUserProfile"; export interface BoardOnboardingAgentComplete { board_type: string; + lead_agent?: BoardOnboardingLeadAgentDraft | null; objective?: string | null; + status: "complete"; success_metrics?: BoardOnboardingAgentCompleteSuccessMetrics; target_date?: string | null; - status: "complete"; + user_profile?: BoardOnboardingUserProfile | null; } diff --git a/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts b/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts index 6904ef01..17e81591 100644 --- a/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts +++ b/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts @@ -7,8 +7,8 @@ import type { BoardOnboardingQuestionOption } from "./boardOnboardingQuestionOption"; export interface BoardOnboardingAgentQuestion { - /** @minLength 1 */ - question: string; /** @minItems 1 */ options: BoardOnboardingQuestionOption[]; + /** @minLength 1 */ + question: string; } diff --git a/frontend/src/api/generated/model/boardOnboardingLeadAgentDraft.ts b/frontend/src/api/generated/model/boardOnboardingLeadAgentDraft.ts new file mode 100644 index 00000000..ffadbf99 --- /dev/null +++ b/frontend/src/api/generated/model/boardOnboardingLeadAgentDraft.ts @@ -0,0 +1,17 @@ +/** + * Generated by orval v8.2.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ +import type { BoardOnboardingLeadAgentDraftIdentityProfile } from "./boardOnboardingLeadAgentDraftIdentityProfile"; + +export interface BoardOnboardingLeadAgentDraft { + autonomy_level?: "ask_first" | "balanced" | "autonomous" | null; + custom_instructions?: string | null; + identity_profile?: BoardOnboardingLeadAgentDraftIdentityProfile; + name?: string | null; + output_format?: "bullets" | "mixed" | "narrative" | null; + update_cadence?: "asap" | "hourly" | "daily" | "weekly" | null; + verbosity?: "concise" | "balanced" | "detailed" | null; +} diff --git a/frontend/src/api/generated/model/boardOnboardingLeadAgentDraftIdentityProfile.ts b/frontend/src/api/generated/model/boardOnboardingLeadAgentDraftIdentityProfile.ts new file mode 100644 index 00000000..1547580d --- /dev/null +++ b/frontend/src/api/generated/model/boardOnboardingLeadAgentDraftIdentityProfile.ts @@ -0,0 +1,10 @@ +/** + * Generated by orval v8.2.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +export type BoardOnboardingLeadAgentDraftIdentityProfile = { + [key: string]: string; +} | null; diff --git a/frontend/src/api/generated/model/boardOnboardingRead.ts b/frontend/src/api/generated/model/boardOnboardingRead.ts index 63be1621..0da3eb8b 100644 --- a/frontend/src/api/generated/model/boardOnboardingRead.ts +++ b/frontend/src/api/generated/model/boardOnboardingRead.ts @@ -4,16 +4,16 @@ * Mission Control API * OpenAPI spec version: 0.1.0 */ -import type { BoardOnboardingReadDraftGoal } from "./boardOnboardingReadDraftGoal"; +import type { BoardOnboardingAgentComplete } from "./boardOnboardingAgentComplete"; import type { BoardOnboardingReadMessages } from "./boardOnboardingReadMessages"; export interface BoardOnboardingRead { - id: string; board_id: string; + created_at: string; + draft_goal?: BoardOnboardingAgentComplete | null; + id: string; + messages?: BoardOnboardingReadMessages; session_key: string; status: string; - messages?: BoardOnboardingReadMessages; - draft_goal?: BoardOnboardingReadDraftGoal; - created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/boardOnboardingUserProfile.ts b/frontend/src/api/generated/model/boardOnboardingUserProfile.ts new file mode 100644 index 00000000..2d7adcd0 --- /dev/null +++ b/frontend/src/api/generated/model/boardOnboardingUserProfile.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v8.2.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +export interface BoardOnboardingUserProfile { + context?: string | null; + notes?: string | null; + preferred_name?: string | null; + pronouns?: string | null; + timezone?: string | null; +} diff --git a/frontend/src/api/generated/model/boardRead.ts b/frontend/src/api/generated/model/boardRead.ts index 9ed20aa0..5b38361e 100644 --- a/frontend/src/api/generated/model/boardRead.ts +++ b/frontend/src/api/generated/model/boardRead.ts @@ -7,16 +7,16 @@ import type { BoardReadSuccessMetrics } from "./boardReadSuccessMetrics"; export interface BoardRead { - name: string; - slug: string; - gateway_id?: string | null; board_type?: string; - objective?: string | null; - success_metrics?: BoardReadSuccessMetrics; - target_date?: string | null; + created_at: string; + gateway_id?: string | null; goal_confirmed?: boolean; goal_source?: string | null; id: string; - created_at: string; + name: string; + objective?: string | null; + slug: string; + success_metrics?: BoardReadSuccessMetrics; + target_date?: string | null; updated_at: string; } diff --git a/frontend/src/api/generated/model/boardSnapshot.ts b/frontend/src/api/generated/model/boardSnapshot.ts index ac1b39cb..2884049b 100644 --- a/frontend/src/api/generated/model/boardSnapshot.ts +++ b/frontend/src/api/generated/model/boardSnapshot.ts @@ -11,10 +11,10 @@ import type { BoardRead } from "./boardRead"; import type { TaskCardRead } from "./taskCardRead"; export interface BoardSnapshot { - board: BoardRead; - tasks: TaskCardRead[]; agents: AgentRead[]; approvals: ApprovalRead[]; + board: BoardRead; chat_messages: BoardMemoryRead[]; pending_approvals_count?: number; + tasks: TaskCardRead[]; } diff --git a/frontend/src/api/generated/model/boardUpdate.ts b/frontend/src/api/generated/model/boardUpdate.ts index 60fe9844..ac03ac6b 100644 --- a/frontend/src/api/generated/model/boardUpdate.ts +++ b/frontend/src/api/generated/model/boardUpdate.ts @@ -7,13 +7,13 @@ import type { BoardUpdateSuccessMetrics } from "./boardUpdateSuccessMetrics"; export interface BoardUpdate { - name?: string | null; - slug?: string | null; - gateway_id?: string | null; board_type?: string | null; - objective?: string | null; - success_metrics?: BoardUpdateSuccessMetrics; - target_date?: string | null; + gateway_id?: string | null; goal_confirmed?: boolean | null; goal_source?: string | null; + name?: string | null; + objective?: string | null; + slug?: string | null; + success_metrics?: BoardUpdateSuccessMetrics; + target_date?: string | null; } diff --git a/frontend/src/api/generated/model/dashboardKpis.ts b/frontend/src/api/generated/model/dashboardKpis.ts index 72fdd827..79cdccd9 100644 --- a/frontend/src/api/generated/model/dashboardKpis.ts +++ b/frontend/src/api/generated/model/dashboardKpis.ts @@ -7,7 +7,7 @@ export interface DashboardKpis { active_agents: number; - tasks_in_progress: number; error_rate_pct: number; median_cycle_time_hours_7d: number | null; + tasks_in_progress: number; } diff --git a/frontend/src/api/generated/model/dashboardMetrics.ts b/frontend/src/api/generated/model/dashboardMetrics.ts index 9fe0efee..0ae98820 100644 --- a/frontend/src/api/generated/model/dashboardMetrics.ts +++ b/frontend/src/api/generated/model/dashboardMetrics.ts @@ -10,11 +10,11 @@ import type { DashboardSeriesSet } from "./dashboardSeriesSet"; import type { DashboardWipSeriesSet } from "./dashboardWipSeriesSet"; export interface DashboardMetrics { - range: DashboardMetricsRange; - generated_at: string; - kpis: DashboardKpis; - throughput: DashboardSeriesSet; cycle_time: DashboardSeriesSet; error_rate: DashboardSeriesSet; + generated_at: string; + kpis: DashboardKpis; + range: DashboardMetricsRange; + throughput: DashboardSeriesSet; wip: DashboardWipSeriesSet; } diff --git a/frontend/src/api/generated/model/dashboardRangeSeries.ts b/frontend/src/api/generated/model/dashboardRangeSeries.ts index b9dfc206..ec58c479 100644 --- a/frontend/src/api/generated/model/dashboardRangeSeries.ts +++ b/frontend/src/api/generated/model/dashboardRangeSeries.ts @@ -9,7 +9,7 @@ import type { DashboardRangeSeriesRange } from "./dashboardRangeSeriesRange"; import type { DashboardSeriesPoint } from "./dashboardSeriesPoint"; export interface DashboardRangeSeries { - range: DashboardRangeSeriesRange; bucket: DashboardRangeSeriesBucket; points: DashboardSeriesPoint[]; + range: DashboardRangeSeriesRange; } diff --git a/frontend/src/api/generated/model/dashboardSeriesSet.ts b/frontend/src/api/generated/model/dashboardSeriesSet.ts index 529b8d38..00600ccf 100644 --- a/frontend/src/api/generated/model/dashboardSeriesSet.ts +++ b/frontend/src/api/generated/model/dashboardSeriesSet.ts @@ -7,6 +7,6 @@ import type { DashboardRangeSeries } from "./dashboardRangeSeries"; export interface DashboardSeriesSet { - primary: DashboardRangeSeries; comparison: DashboardRangeSeries; + primary: DashboardRangeSeries; } diff --git a/frontend/src/api/generated/model/dashboardWipPoint.ts b/frontend/src/api/generated/model/dashboardWipPoint.ts index 2f47f974..a9468ed4 100644 --- a/frontend/src/api/generated/model/dashboardWipPoint.ts +++ b/frontend/src/api/generated/model/dashboardWipPoint.ts @@ -6,8 +6,8 @@ */ export interface DashboardWipPoint { - period: string; - inbox: number; in_progress: number; + inbox: number; + period: string; review: number; } diff --git a/frontend/src/api/generated/model/dashboardWipRangeSeries.ts b/frontend/src/api/generated/model/dashboardWipRangeSeries.ts index 9c34d786..337fbb59 100644 --- a/frontend/src/api/generated/model/dashboardWipRangeSeries.ts +++ b/frontend/src/api/generated/model/dashboardWipRangeSeries.ts @@ -9,7 +9,7 @@ import type { DashboardWipRangeSeriesBucket } from "./dashboardWipRangeSeriesBuc import type { DashboardWipRangeSeriesRange } from "./dashboardWipRangeSeriesRange"; export interface DashboardWipRangeSeries { - range: DashboardWipRangeSeriesRange; bucket: DashboardWipRangeSeriesBucket; points: DashboardWipPoint[]; + range: DashboardWipRangeSeriesRange; } diff --git a/frontend/src/api/generated/model/dashboardWipSeriesSet.ts b/frontend/src/api/generated/model/dashboardWipSeriesSet.ts index 55ad1ab1..7582d0dd 100644 --- a/frontend/src/api/generated/model/dashboardWipSeriesSet.ts +++ b/frontend/src/api/generated/model/dashboardWipSeriesSet.ts @@ -7,6 +7,6 @@ import type { DashboardWipRangeSeries } from "./dashboardWipRangeSeries"; export interface DashboardWipSeriesSet { - primary: DashboardWipRangeSeries; comparison: DashboardWipRangeSeries; + primary: DashboardWipRangeSeries; } diff --git a/frontend/src/api/generated/model/gatewayCommandsResponse.ts b/frontend/src/api/generated/model/gatewayCommandsResponse.ts index cf902c2d..494fda1c 100644 --- a/frontend/src/api/generated/model/gatewayCommandsResponse.ts +++ b/frontend/src/api/generated/model/gatewayCommandsResponse.ts @@ -6,7 +6,7 @@ */ export interface GatewayCommandsResponse { - protocol_version: number; - methods: string[]; events: string[]; + methods: string[]; + protocol_version: number; } diff --git a/frontend/src/api/generated/model/gatewayCreate.ts b/frontend/src/api/generated/model/gatewayCreate.ts index b145f7c8..00da0901 100644 --- a/frontend/src/api/generated/model/gatewayCreate.ts +++ b/frontend/src/api/generated/model/gatewayCreate.ts @@ -6,10 +6,10 @@ */ export interface GatewayCreate { - name: string; - url: string; main_session_key: string; - workspace_root: string; + name: string; skyll_enabled?: boolean; token?: string | null; + url: string; + workspace_root: string; } diff --git a/frontend/src/api/generated/model/gatewayRead.ts b/frontend/src/api/generated/model/gatewayRead.ts index ba0e1568..2b040e3d 100644 --- a/frontend/src/api/generated/model/gatewayRead.ts +++ b/frontend/src/api/generated/model/gatewayRead.ts @@ -6,13 +6,13 @@ */ export interface GatewayRead { - name: string; - url: string; - main_session_key: string; - workspace_root: string; - skyll_enabled?: boolean; - id: string; - token?: string | null; created_at: string; + id: string; + main_session_key: string; + name: string; + skyll_enabled?: boolean; + token?: string | null; updated_at: string; + url: string; + workspace_root: string; } diff --git a/frontend/src/api/generated/model/gatewaySessionsResponse.ts b/frontend/src/api/generated/model/gatewaySessionsResponse.ts index 126b131b..6cd847c9 100644 --- a/frontend/src/api/generated/model/gatewaySessionsResponse.ts +++ b/frontend/src/api/generated/model/gatewaySessionsResponse.ts @@ -6,7 +6,7 @@ */ export interface GatewaySessionsResponse { - sessions: unknown[]; - main_session_key?: string | null; main_session?: unknown | null; + main_session_key?: string | null; + sessions: unknown[]; } diff --git a/frontend/src/api/generated/model/gatewayUpdate.ts b/frontend/src/api/generated/model/gatewayUpdate.ts index a949944c..055c07d4 100644 --- a/frontend/src/api/generated/model/gatewayUpdate.ts +++ b/frontend/src/api/generated/model/gatewayUpdate.ts @@ -6,10 +6,10 @@ */ export interface GatewayUpdate { - name?: string | null; - url?: string | null; - token?: string | null; main_session_key?: string | null; - workspace_root?: string | null; + name?: string | null; skyll_enabled?: boolean | null; + token?: string | null; + url?: string | null; + workspace_root?: string | null; } diff --git a/frontend/src/api/generated/model/gatewaysStatusResponse.ts b/frontend/src/api/generated/model/gatewaysStatusResponse.ts index 033d8daa..5419414b 100644 --- a/frontend/src/api/generated/model/gatewaysStatusResponse.ts +++ b/frontend/src/api/generated/model/gatewaysStatusResponse.ts @@ -7,11 +7,11 @@ export interface GatewaysStatusResponse { connected: boolean; + error?: string | null; gateway_url: string; - sessions_count?: number | null; - sessions?: unknown[] | null; - main_session_key?: string | null; main_session?: unknown | null; main_session_error?: string | null; - error?: string | null; + main_session_key?: string | null; + sessions?: unknown[] | null; + sessions_count?: number | null; } diff --git a/frontend/src/api/generated/model/index.ts b/frontend/src/api/generated/model/index.ts index ae1c2edf..70886b64 100644 --- a/frontend/src/api/generated/model/index.ts +++ b/frontend/src/api/generated/model/index.ts @@ -39,11 +39,14 @@ export * from "./boardOnboardingAgentQuestion"; export * from "./boardOnboardingAnswer"; export * from "./boardOnboardingConfirm"; export * from "./boardOnboardingConfirmSuccessMetrics"; +export * from "./boardOnboardingLeadAgentDraft"; +export * from "./boardOnboardingLeadAgentDraftIdentityProfile"; export * from "./boardOnboardingQuestionOption"; export * from "./boardOnboardingRead"; export * from "./boardOnboardingReadDraftGoal"; export * from "./boardOnboardingReadMessages"; export * from "./boardOnboardingStart"; +export * from "./boardOnboardingUserProfile"; export * from "./boardRead"; export * from "./boardReadSuccessMetrics"; export * from "./boardSnapshot"; diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityEventRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityEventRead.ts index e7eb3a00..5272b2eb 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityEventRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityEventRead.ts @@ -8,10 +8,10 @@ import type { ActivityEventRead } from "./activityEventRead"; export interface LimitOffsetPageTypeVarCustomizedActivityEventRead { items: ActivityEventRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedAgentRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedAgentRead.ts index 28ae2480..442afbc9 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedAgentRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedAgentRead.ts @@ -8,10 +8,10 @@ import type { AgentRead } from "./agentRead"; export interface LimitOffsetPageTypeVarCustomizedAgentRead { items: AgentRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedApprovalRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedApprovalRead.ts index dbfacd4b..6bfce9e1 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedApprovalRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedApprovalRead.ts @@ -8,10 +8,10 @@ import type { ApprovalRead } from "./approvalRead"; export interface LimitOffsetPageTypeVarCustomizedApprovalRead { items: ApprovalRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardMemoryRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardMemoryRead.ts index a045271f..99f2f655 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardMemoryRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardMemoryRead.ts @@ -8,10 +8,10 @@ import type { BoardMemoryRead } from "./boardMemoryRead"; export interface LimitOffsetPageTypeVarCustomizedBoardMemoryRead { items: BoardMemoryRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardRead.ts index bd9c340d..05aba022 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardRead.ts @@ -8,10 +8,10 @@ import type { BoardRead } from "./boardRead"; export interface LimitOffsetPageTypeVarCustomizedBoardRead { items: BoardRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedGatewayRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedGatewayRead.ts index 137773df..817ff7ec 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedGatewayRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedGatewayRead.ts @@ -8,10 +8,10 @@ import type { GatewayRead } from "./gatewayRead"; export interface LimitOffsetPageTypeVarCustomizedGatewayRead { items: GatewayRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskCommentRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskCommentRead.ts index e3ec06dc..bdafa7d8 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskCommentRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskCommentRead.ts @@ -8,10 +8,10 @@ import type { TaskCommentRead } from "./taskCommentRead"; export interface LimitOffsetPageTypeVarCustomizedTaskCommentRead { items: TaskCommentRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskRead.ts index cd1205dd..c89d8195 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTaskRead.ts @@ -8,10 +8,10 @@ import type { TaskRead } from "./taskRead"; export interface LimitOffsetPageTypeVarCustomizedTaskRead { items: TaskRead[]; - /** @minimum 0 */ - total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; + /** @minimum 0 */ + total: number; } diff --git a/frontend/src/api/generated/model/listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams.ts b/frontend/src/api/generated/model/listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams.ts index 1e142170..2123d555 100644 --- a/frontend/src/api/generated/model/listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams.ts +++ b/frontend/src/api/generated/model/listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams.ts @@ -6,6 +6,7 @@ */ export type ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams = { + is_chat?: boolean | null; /** * @minimum 1 * @maximum 200 diff --git a/frontend/src/api/generated/model/taskCardRead.ts b/frontend/src/api/generated/model/taskCardRead.ts index 785926ef..323eb22d 100644 --- a/frontend/src/api/generated/model/taskCardRead.ts +++ b/frontend/src/api/generated/model/taskCardRead.ts @@ -7,19 +7,19 @@ import type { TaskCardReadStatus } from "./taskCardReadStatus"; export interface TaskCardRead { - title: string; - description?: string | null; - status?: TaskCardReadStatus; - priority?: string; - due_at?: string | null; - assigned_agent_id?: string | null; - id: string; - board_id: string | null; - created_by_user_id: string | null; - in_progress_at: string | null; - created_at: string; - updated_at: string; - assignee?: string | null; approvals_count?: number; approvals_pending_count?: number; + assigned_agent_id?: string | null; + assignee?: string | null; + board_id: string | null; + created_at: string; + created_by_user_id: string | null; + description?: string | null; + due_at?: string | null; + id: string; + in_progress_at: string | null; + priority?: string; + status?: TaskCardReadStatus; + title: string; + updated_at: string; } diff --git a/frontend/src/api/generated/model/taskCommentRead.ts b/frontend/src/api/generated/model/taskCommentRead.ts index cc564640..2213a240 100644 --- a/frontend/src/api/generated/model/taskCommentRead.ts +++ b/frontend/src/api/generated/model/taskCommentRead.ts @@ -6,9 +6,9 @@ */ export interface TaskCommentRead { + agent_id: string | null; + created_at: string; id: string; message: string | null; - agent_id: string | null; task_id: string | null; - created_at: string; } diff --git a/frontend/src/api/generated/model/taskCreate.ts b/frontend/src/api/generated/model/taskCreate.ts index d9547ee6..df41dc66 100644 --- a/frontend/src/api/generated/model/taskCreate.ts +++ b/frontend/src/api/generated/model/taskCreate.ts @@ -7,11 +7,11 @@ import type { TaskCreateStatus } from "./taskCreateStatus"; export interface TaskCreate { - title: string; - description?: string | null; - status?: TaskCreateStatus; - priority?: string; - due_at?: string | null; assigned_agent_id?: string | null; created_by_user_id?: string | null; + description?: string | null; + due_at?: string | null; + priority?: string; + status?: TaskCreateStatus; + title: string; } diff --git a/frontend/src/api/generated/model/taskRead.ts b/frontend/src/api/generated/model/taskRead.ts index c4854855..6a39611c 100644 --- a/frontend/src/api/generated/model/taskRead.ts +++ b/frontend/src/api/generated/model/taskRead.ts @@ -7,16 +7,16 @@ import type { TaskReadStatus } from "./taskReadStatus"; export interface TaskRead { - title: string; - description?: string | null; - status?: TaskReadStatus; - priority?: string; - due_at?: string | null; assigned_agent_id?: string | null; - id: string; board_id: string | null; - created_by_user_id: string | null; - in_progress_at: string | null; created_at: string; + created_by_user_id: string | null; + description?: string | null; + due_at?: string | null; + id: string; + in_progress_at: string | null; + priority?: string; + status?: TaskReadStatus; + title: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/taskUpdate.ts b/frontend/src/api/generated/model/taskUpdate.ts index ce865ebb..faabf813 100644 --- a/frontend/src/api/generated/model/taskUpdate.ts +++ b/frontend/src/api/generated/model/taskUpdate.ts @@ -6,11 +6,11 @@ */ export interface TaskUpdate { - title?: string | null; - description?: string | null; - status?: "inbox" | "in_progress" | "review" | "done" | null; - priority?: string | null; - due_at?: string | null; assigned_agent_id?: string | null; comment?: string | null; + description?: string | null; + due_at?: string | null; + priority?: string | null; + status?: "inbox" | "in_progress" | "review" | "done" | null; + title?: string | null; } diff --git a/frontend/src/api/generated/model/userRead.ts b/frontend/src/api/generated/model/userRead.ts index 3011c34e..6fb369fe 100644 --- a/frontend/src/api/generated/model/userRead.ts +++ b/frontend/src/api/generated/model/userRead.ts @@ -7,13 +7,13 @@ export interface UserRead { clerk_user_id: string; + context?: string | null; email?: string | null; + id: string; + is_super_admin: boolean; name?: string | null; + notes?: string | null; preferred_name?: string | null; pronouns?: string | null; timezone?: string | null; - notes?: string | null; - context?: string | null; - id: string; - is_super_admin: boolean; } diff --git a/frontend/src/api/generated/model/userUpdate.ts b/frontend/src/api/generated/model/userUpdate.ts index dbb1978d..e8e29c56 100644 --- a/frontend/src/api/generated/model/userUpdate.ts +++ b/frontend/src/api/generated/model/userUpdate.ts @@ -6,10 +6,10 @@ */ export interface UserUpdate { + context?: string | null; name?: string | null; + notes?: string | null; preferred_name?: string | null; pronouns?: string | null; timezone?: string | null; - notes?: string | null; - context?: string | null; } diff --git a/frontend/src/api/generated/tasks/tasks.ts b/frontend/src/api/generated/tasks/tasks.ts index 2dadbf54..87729ab9 100644 --- a/frontend/src/api/generated/tasks/tasks.ts +++ b/frontend/src/api/generated/tasks/tasks.ts @@ -39,258 +39,6 @@ import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; -/** - * @summary Stream Tasks - */ -export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse200 = { - data: unknown; - status: 200; -}; - -export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponseSuccess = - streamTasksApiV1BoardsBoardIdTasksStreamGetResponse200 & { - headers: Headers; - }; -export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponseError = - streamTasksApiV1BoardsBoardIdTasksStreamGetResponse422 & { - headers: Headers; - }; - -export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse = - | streamTasksApiV1BoardsBoardIdTasksStreamGetResponseSuccess - | streamTasksApiV1BoardsBoardIdTasksStreamGetResponseError; - -export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetUrl = ( - boardId: string, - params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, -) => { - const normalizedParams = new URLSearchParams(); - - Object.entries(params || {}).forEach(([key, value]) => { - if (value !== undefined) { - normalizedParams.append(key, value === null ? "null" : value.toString()); - } - }); - - const stringifiedParams = normalizedParams.toString(); - - return stringifiedParams.length > 0 - ? `/api/v1/boards/${boardId}/tasks/stream?${stringifiedParams}` - : `/api/v1/boards/${boardId}/tasks/stream`; -}; - -export const streamTasksApiV1BoardsBoardIdTasksStreamGet = async ( - boardId: string, - params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, - options?: RequestInit, -): Promise => { - return customFetch( - getStreamTasksApiV1BoardsBoardIdTasksStreamGetUrl(boardId, params), - { - ...options, - method: "GET", - }, - ); -}; - -export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryKey = ( - boardId: string, - params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, -) => { - return [ - `/api/v1/boards/${boardId}/tasks/stream`, - ...(params ? [params] : []), - ] as const; -}; - -export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryOptions = < - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, -) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryKey(boardId, params); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - streamTasksApiV1BoardsBoardIdTasksStreamGet(boardId, params, { - signal, - ...requestOptions, - }); - - return { - queryKey, - queryFn, - enabled: !!boardId, - ...queryOptions, - } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type StreamTasksApiV1BoardsBoardIdTasksStreamGetQueryResult = - NonNullable< - Awaited> - >; -export type StreamTasksApiV1BoardsBoardIdTasksStreamGetQueryError = - HTTPValidationError; - -export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params: undefined | StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, - options: { - query: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - > & - Pick< - DefinedInitialDataOptions< - Awaited< - ReturnType - >, - TError, - Awaited< - ReturnType - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): DefinedUseQueryResult & { - queryKey: DataTag; -}; -export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - > & - Pick< - UndefinedInitialDataOptions< - Awaited< - ReturnType - >, - TError, - Awaited< - ReturnType - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary Stream Tasks - */ - -export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryOptions( - boardId, - params, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - /** * @summary List Tasks */ @@ -643,6 +391,383 @@ export const useCreateTaskApiV1BoardsBoardIdTasksPost = < queryClient, ); }; +/** + * @summary Stream Tasks + */ +export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse200 = { + data: unknown; + status: 200; +}; + +export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponseSuccess = + streamTasksApiV1BoardsBoardIdTasksStreamGetResponse200 & { + headers: Headers; + }; +export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponseError = + streamTasksApiV1BoardsBoardIdTasksStreamGetResponse422 & { + headers: Headers; + }; + +export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse = + | streamTasksApiV1BoardsBoardIdTasksStreamGetResponseSuccess + | streamTasksApiV1BoardsBoardIdTasksStreamGetResponseError; + +export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetUrl = ( + boardId: string, + params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, +) => { + const normalizedParams = new URLSearchParams(); + + Object.entries(params || {}).forEach(([key, value]) => { + if (value !== undefined) { + normalizedParams.append(key, value === null ? "null" : value.toString()); + } + }); + + const stringifiedParams = normalizedParams.toString(); + + return stringifiedParams.length > 0 + ? `/api/v1/boards/${boardId}/tasks/stream?${stringifiedParams}` + : `/api/v1/boards/${boardId}/tasks/stream`; +}; + +export const streamTasksApiV1BoardsBoardIdTasksStreamGet = async ( + boardId: string, + params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, + options?: RequestInit, +): Promise => { + return customFetch( + getStreamTasksApiV1BoardsBoardIdTasksStreamGetUrl(boardId, params), + { + ...options, + method: "GET", + }, + ); +}; + +export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryKey = ( + boardId: string, + params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, +) => { + return [ + `/api/v1/boards/${boardId}/tasks/stream`, + ...(params ? [params] : []), + ] as const; +}; + +export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryOptions = < + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, +) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryKey(boardId, params); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + streamTasksApiV1BoardsBoardIdTasksStreamGet(boardId, params, { + signal, + ...requestOptions, + }); + + return { + queryKey, + queryFn, + enabled: !!boardId, + ...queryOptions, + } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type StreamTasksApiV1BoardsBoardIdTasksStreamGetQueryResult = + NonNullable< + Awaited> + >; +export type StreamTasksApiV1BoardsBoardIdTasksStreamGetQueryError = + HTTPValidationError; + +export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params: undefined | StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, + options: { + query: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited< + ReturnType + >, + TError, + Awaited< + ReturnType + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited< + ReturnType + >, + TError, + Awaited< + ReturnType + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Stream Tasks + */ + +export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryOptions( + boardId, + params, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * @summary Delete Task + */ +export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse200 = { + data: OkResponse; + status: 200; +}; + +export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseSuccess = + deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseError = + deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse = + | deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseSuccess + | deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseError; + +export const getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteUrl = ( + boardId: string, + taskId: string, +) => { + return `/api/v1/boards/${boardId}/tasks/${taskId}`; +}; + +export const deleteTaskApiV1BoardsBoardIdTasksTaskIdDelete = async ( + boardId: string, + taskId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteUrl(boardId, taskId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; taskId: string }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { boardId: string; taskId: string }, + TContext +> => { + const mutationKey = ["deleteTaskApiV1BoardsBoardIdTasksTaskIdDelete"]; + const { mutation: mutationOptions, request: requestOptions } = options + ? options.mutation && + "mutationKey" in options.mutation && + options.mutation.mutationKey + ? options + : { ...options, mutation: { ...options.mutation, mutationKey } } + : { mutation: { mutationKey }, request: undefined }; + + const mutationFn: MutationFunction< + Awaited>, + { boardId: string; taskId: string } + > = (props) => { + const { boardId, taskId } = props ?? {}; + + return deleteTaskApiV1BoardsBoardIdTasksTaskIdDelete( + boardId, + taskId, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationResult = + NonNullable< + Awaited> + >; + +export type DeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Delete Task + */ +export const useDeleteTaskApiV1BoardsBoardIdTasksTaskIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; taskId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { boardId: string; taskId: string }, + TContext +> => { + return useMutation( + getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationOptions(options), + queryClient, + ); +}; /** * @summary Update Task */ @@ -773,131 +898,6 @@ export const useUpdateTaskApiV1BoardsBoardIdTasksTaskIdPatch = < queryClient, ); }; -/** - * @summary Delete Task - */ -export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseSuccess = - deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseError = - deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse = - | deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseSuccess - | deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponseError; - -export const getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteUrl = ( - boardId: string, - taskId: string, -) => { - return `/api/v1/boards/${boardId}/tasks/${taskId}`; -}; - -export const deleteTaskApiV1BoardsBoardIdTasksTaskIdDelete = async ( - boardId: string, - taskId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteUrl(boardId, taskId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { boardId: string; taskId: string }, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { boardId: string; taskId: string }, - TContext -> => { - const mutationKey = ["deleteTaskApiV1BoardsBoardIdTasksTaskIdDelete"]; - const { mutation: mutationOptions, request: requestOptions } = options - ? options.mutation && - "mutationKey" in options.mutation && - options.mutation.mutationKey - ? options - : { ...options, mutation: { ...options.mutation, mutationKey } } - : { mutation: { mutationKey }, request: undefined }; - - const mutationFn: MutationFunction< - Awaited>, - { boardId: string; taskId: string } - > = (props) => { - const { boardId, taskId } = props ?? {}; - - return deleteTaskApiV1BoardsBoardIdTasksTaskIdDelete( - boardId, - taskId, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationResult = - NonNullable< - Awaited> - >; - -export type DeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Task - */ -export const useDeleteTaskApiV1BoardsBoardIdTasksTaskIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { boardId: string; taskId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { boardId: string; taskId: string }, - TContext -> => { - return useMutation( - getDeleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteMutationOptions(options), - queryClient, - ); -}; /** * @summary List Task Comments */ diff --git a/frontend/src/app/boards/[boardId]/edit/page.tsx b/frontend/src/app/boards/[boardId]/edit/page.tsx index fb4c5beb..2d740686 100644 --- a/frontend/src/app/boards/[boardId]/edit/page.tsx +++ b/frontend/src/app/boards/[boardId]/edit/page.tsx @@ -4,6 +4,7 @@ import { useEffect, useMemo, useState } from "react"; import { useParams, useRouter, useSearchParams } from "next/navigation"; import { SignInButton, SignedIn, SignedOut, useAuth } from "@clerk/nextjs"; +import { X } from "lucide-react"; import { ApiError } from "@/api/mutator"; import { @@ -20,7 +21,7 @@ import { BoardOnboardingChat } from "@/components/BoardOnboardingChat"; import { DashboardSidebar } from "@/components/organisms/DashboardSidebar"; import { DashboardShell } from "@/components/templates/DashboardShell"; import { Button } from "@/components/ui/button"; -import { Dialog, DialogContent } from "@/components/ui/dialog"; +import { Dialog, DialogClose, DialogContent } from "@/components/ui/dialog"; import { Input } from "@/components/ui/input"; import { Select, @@ -395,7 +396,21 @@ export default function EditBoardPage() { - + event.preventDefault()} + onInteractOutside={(event) => event.preventDefault()} + > + + + {boardId ? ( ) : null} -