From aebd487270ecdd66b3b6c392d8270ca054d2ba22 Mon Sep 17 00:00:00 2001 From: Abhimanyu Saharan Date: Sun, 15 Feb 2026 13:36:57 +0530 Subject: [PATCH] refactor: add agent_id to various interfaces and improve field organization --- backend/app/api/board_webhooks.py | 50 +- backend/app/models/board_webhooks.py | 1 + backend/app/schemas/board_webhooks.py | 3 + backend/app/services/webhooks/dispatch.py | 20 +- ...d9c3e4f5_add_agent_id_to_board_webhooks.py | 38 + backend/tests/test_webhook_dispatch.py | 123 + frontend/src/api/generated/agent/agent.ts | 5164 +++++++++-------- frontend/src/api/generated/agents/agents.ts | 490 +- frontend/src/api/generated/auth/auth.ts | 27 +- .../generated/board-groups/board-groups.ts | 483 +- .../board-onboarding/board-onboarding.ts | 584 +- .../board-webhooks/board-webhooks.ts | 314 +- frontend/src/api/generated/boards/boards.ts | 712 +-- .../generated/custom-fields/custom-fields.ts | 751 +++ .../src/api/generated/gateways/gateways.ts | 922 +-- frontend/src/api/generated/health/health.ts | 514 ++ .../api/generated/model/activityEventRead.ts | 6 +- .../model/activityTaskCommentFeedItemRead.ts | 10 +- .../src/api/generated/model/agentCreate.ts | 19 +- .../model/agentCreateHeartbeatConfig.ts | 3 + .../model/agentCreateIdentityProfile.ts | 3 + .../src/api/generated/model/agentHeartbeat.ts | 1 + .../generated/model/agentHeartbeatCreate.ts | 11 +- .../src/api/generated/model/agentNudge.ts | 5 +- frontend/src/api/generated/model/agentRead.ts | 41 +- .../model/agentReadHeartbeatConfig.ts | 3 + .../model/agentReadIdentityProfile.ts | 3 + .../src/api/generated/model/agentUpdate.ts | 16 +- .../model/agentUpdateHeartbeatConfig.ts | 3 + .../model/agentUpdateIdentityProfile.ts | 3 + .../src/api/generated/model/approvalCreate.ts | 10 +- .../src/api/generated/model/approvalRead.ts | 16 +- .../api/generated/model/blockedTaskDetail.ts | 2 +- .../src/api/generated/model/boardCreate.ts | 24 +- .../api/generated/model/boardGroupCreate.ts | 2 +- .../model/boardGroupHeartbeatApply.ts | 1 - .../model/boardGroupHeartbeatApplyResult.ts | 2 +- .../generated/model/boardGroupMemoryCreate.ts | 2 +- .../generated/model/boardGroupMemoryRead.ts | 8 +- .../src/api/generated/model/boardGroupRead.ts | 6 +- .../api/generated/model/boardGroupSnapshot.ts | 2 +- .../generated/model/boardGroupTaskSummary.ts | 18 +- .../api/generated/model/boardGroupUpdate.ts | 2 +- .../api/generated/model/boardMemoryCreate.ts | 2 +- .../api/generated/model/boardMemoryRead.ts | 8 +- .../model/boardOnboardingAgentComplete.ts | 4 +- .../model/boardOnboardingAgentQuestion.ts | 4 +- .../model/boardOnboardingLeadAgentDraft.ts | 8 +- .../generated/model/boardOnboardingRead.ts | 8 +- .../model/boardOnboardingUserProfile.ts | 4 +- frontend/src/api/generated/model/boardRead.ts | 30 +- .../src/api/generated/model/boardSnapshot.ts | 4 +- .../src/api/generated/model/boardUpdate.ts | 22 +- .../api/generated/model/boardWebhookCreate.ts | 1 + .../model/boardWebhookIngestResponse.ts | 4 +- .../model/boardWebhookPayloadRead.ts | 12 +- .../api/generated/model/boardWebhookRead.ts | 5 +- .../api/generated/model/boardWebhookUpdate.ts | 1 + .../src/api/generated/model/dashboardKpis.ts | 2 +- .../api/generated/model/dashboardMetrics.ts | 6 +- .../generated/model/dashboardRangeSeries.ts | 2 +- .../api/generated/model/dashboardSeriesSet.ts | 2 +- .../api/generated/model/dashboardWipPoint.ts | 6 +- .../model/dashboardWipRangeSeries.ts | 2 +- .../generated/model/dashboardWipSeriesSet.ts | 2 +- .../model/gatewayCommandsResponse.ts | 4 +- .../src/api/generated/model/gatewayCreate.ts | 2 +- .../model/gatewayLeadBroadcastBoardResult.ts | 7 +- .../model/gatewayLeadBroadcastRequest.ts | 18 +- .../model/gatewayLeadBroadcastRequestKind.ts | 3 + .../model/gatewayLeadBroadcastResponse.ts | 7 +- .../model/gatewayLeadMessageRequest.ts | 15 +- .../model/gatewayLeadMessageRequestKind.ts | 3 + .../model/gatewayLeadMessageResponse.ts | 13 +- .../model/gatewayMainAskUserRequest.ts | 13 +- .../model/gatewayMainAskUserResponse.ts | 10 +- .../src/api/generated/model/gatewayRead.ts | 10 +- .../model/gatewaySessionsResponse.ts | 2 +- .../model/gatewayTemplatesSyncResult.ts | 8 +- .../src/api/generated/model/gatewayUpdate.ts | 2 +- .../generated/model/gatewaysStatusResponse.ts | 6 +- .../generated/model/healthStatusResponse.ts | 14 + frontend/src/api/generated/model/index.ts | 7 + .../api/generated/model/lLMErrorResponse.ts | 21 + .../generated/model/lLMErrorResponseDetail.ts | 14 + ...tPageTypeVarCustomizedActivityEventRead.ts | 4 +- ...stomizedActivityTaskCommentFeedItemRead.ts | 4 +- ...mitOffsetPageTypeVarCustomizedAgentRead.ts | 4 +- ...OffsetPageTypeVarCustomizedApprovalRead.ts | 4 +- ...geTypeVarCustomizedBoardGroupMemoryRead.ts | 4 +- ...fsetPageTypeVarCustomizedBoardGroupRead.ts | 4 +- ...setPageTypeVarCustomizedBoardMemoryRead.ts | 4 +- ...mitOffsetPageTypeVarCustomizedBoardRead.ts | 4 +- ...ypeVarCustomizedBoardWebhookPayloadRead.ts | 4 +- ...etPageTypeVarCustomizedBoardWebhookRead.ts | 4 +- ...tOffsetPageTypeVarCustomizedGatewayRead.ts | 4 +- ...TypeVarCustomizedOrganizationInviteRead.ts | 4 +- ...TypeVarCustomizedOrganizationMemberRead.ts | 4 +- ...limitOffsetPageTypeVarCustomizedTagRead.ts | 4 +- ...setPageTypeVarCustomizedTaskCommentRead.ts | 4 +- ...imitOffsetPageTypeVarCustomizedTaskRead.ts | 4 +- ...ceSkillsApiV1SkillsMarketplaceGetParams.ts | 9 + .../model/marketplaceSkillActionResponse.ts | 4 +- .../model/marketplaceSkillCardRead.ts | 14 +- .../model/marketplaceSkillCardReadMetadata.ts | 8 + .../generated/model/marketplaceSkillCreate.ts | 4 +- .../generated/model/marketplaceSkillRead.ts | 10 +- .../model/marketplaceSkillReadMetadata.ts | 8 + .../model/organizationBoardAccessRead.ts | 2 +- .../model/organizationInviteCreate.ts | 4 +- .../generated/model/organizationInviteRead.ts | 16 +- .../generated/model/organizationListItem.ts | 2 +- .../generated/model/organizationMemberRead.ts | 10 +- .../api/generated/model/organizationRead.ts | 2 +- .../generated/model/organizationUserRead.ts | 2 +- .../api/generated/model/skillPackCreate.ts | 9 +- .../model/skillPackCreateMetadata.ts | 8 + .../src/api/generated/model/skillPackRead.ts | 13 +- .../generated/model/skillPackReadMetadata.ts | 8 + .../generated/model/skillPackSyncResponse.ts | 4 +- .../api/generated/model/soulUpdateRequest.ts | 2 +- .../model/soulsDirectoryMarkdownResponse.ts | 2 +- .../generated/model/soulsDirectorySoulRef.ts | 2 +- ...atewaysGatewayIdTemplatesSyncPostParams.ts | 1 + frontend/src/api/generated/model/tagCreate.ts | 4 +- frontend/src/api/generated/model/tagRead.ts | 6 +- frontend/src/api/generated/model/tagRef.ts | 2 +- frontend/src/api/generated/model/tagUpdate.ts | 4 +- .../src/api/generated/model/taskCardRead.ts | 38 +- .../api/generated/model/taskCommentRead.ts | 4 +- .../src/api/generated/model/taskCreate.ts | 14 +- .../model/taskCustomFieldDefinitionCreate.ts | 12 +- .../model/taskCustomFieldDefinitionRead.ts | 20 +- .../model/taskCustomFieldDefinitionUpdate.ts | 10 +- frontend/src/api/generated/model/taskRead.ts | 32 +- .../src/api/generated/model/taskUpdate.ts | 18 +- frontend/src/api/generated/model/userRead.ts | 18 +- .../src/api/generated/model/userUpdate.ts | 4 +- .../api/generated/model/validationError.ts | 4 +- .../generated/organizations/organizations.ts | 2964 +++++----- frontend/src/api/generated/skills/skills.ts | 240 +- frontend/src/api/generated/tags/tags.ts | 232 +- frontend/src/api/generated/tasks/tasks.ts | 758 +-- frontend/src/api/generated/users/users.ts | 204 +- .../src/app/boards/[boardId]/edit/page.tsx | 142 +- 145 files changed, 8776 insertions(+), 6898 deletions(-) create mode 100644 backend/migrations/versions/b7a1d9c3e4f5_add_agent_id_to_board_webhooks.py create mode 100644 frontend/src/api/generated/custom-fields/custom-fields.ts create mode 100644 frontend/src/api/generated/health/health.ts create mode 100644 frontend/src/api/generated/model/healthStatusResponse.ts create mode 100644 frontend/src/api/generated/model/lLMErrorResponse.ts create mode 100644 frontend/src/api/generated/model/lLMErrorResponseDetail.ts create mode 100644 frontend/src/api/generated/model/marketplaceSkillCardReadMetadata.ts create mode 100644 frontend/src/api/generated/model/marketplaceSkillReadMetadata.ts create mode 100644 frontend/src/api/generated/model/skillPackCreateMetadata.ts create mode 100644 frontend/src/api/generated/model/skillPackReadMetadata.ts diff --git a/backend/app/api/board_webhooks.py b/backend/app/api/board_webhooks.py index ba16c26c..e0107a2c 100644 --- a/backend/app/api/board_webhooks.py +++ b/backend/app/api/board_webhooks.py @@ -64,6 +64,7 @@ def _to_webhook_read(webhook: BoardWebhook) -> BoardWebhookRead: return BoardWebhookRead( id=webhook.id, board_id=webhook.board_id, + agent_id=webhook.agent_id, description=webhook.description, enabled=webhook.enabled, endpoint_path=endpoint_path, @@ -206,12 +207,18 @@ async def _notify_lead_on_webhook_payload( webhook: BoardWebhook, payload: BoardWebhookPayload, ) -> None: - lead = ( - await Agent.objects.filter_by(board_id=board.id) - .filter(col(Agent.is_board_lead).is_(True)) - .first(session) - ) - if lead is None or not lead.openclaw_session_id: + target_agent: Agent | None = None + if webhook.agent_id is not None: + target_agent = await Agent.objects.filter_by(id=webhook.agent_id, board_id=board.id).first( + session + ) + if target_agent is None: + target_agent = ( + await Agent.objects.filter_by(board_id=board.id) + .filter(col(Agent.is_board_lead).is_(True)) + .first(session) + ) + if target_agent is None or not target_agent.openclaw_session_id: return dispatch = GatewayDispatchService(session) @@ -236,14 +243,30 @@ async def _notify_lead_on_webhook_payload( f"GET /api/v1/agent/boards/{board.id}/memory?is_chat=false" ) await dispatch.try_send_agent_message( - session_key=lead.openclaw_session_id, + session_key=target_agent.openclaw_session_id, config=config, - agent_name=lead.name, + agent_name=target_agent.name, message=message, deliver=False, ) +async def _validate_agent_id( + *, + session: AsyncSession, + board: Board, + agent_id: UUID | None, +) -> None: + if agent_id is None: + return + agent = await Agent.objects.filter_by(id=agent_id, board_id=board.id).first(session) + if agent is None: + raise HTTPException( + status_code=status.HTTP_422_UNPROCESSABLE_ENTITY, + detail="agent_id must reference an agent on this board.", + ) + + @router.get("", response_model=DefaultLimitOffsetPage[BoardWebhookRead]) async def list_board_webhooks( board: Board = BOARD_USER_READ_DEP, @@ -270,8 +293,14 @@ async def create_board_webhook( session: AsyncSession = SESSION_DEP, ) -> BoardWebhookRead: """Create a new board webhook with a generated UUID endpoint.""" + await _validate_agent_id( + session=session, + board=board, + agent_id=payload.agent_id, + ) webhook = BoardWebhook( board_id=board.id, + agent_id=payload.agent_id, description=payload.description, enabled=payload.enabled, ) @@ -309,6 +338,11 @@ async def update_board_webhook( ) updates = payload.model_dump(exclude_unset=True) if updates: + await _validate_agent_id( + session=session, + board=board, + agent_id=updates.get("agent_id"), + ) crud.apply_updates(webhook, updates) webhook.updated_at = utcnow() await crud.save(session, webhook) diff --git a/backend/app/models/board_webhooks.py b/backend/app/models/board_webhooks.py index 43e524f0..7646f1d2 100644 --- a/backend/app/models/board_webhooks.py +++ b/backend/app/models/board_webhooks.py @@ -20,6 +20,7 @@ class BoardWebhook(QueryModel, table=True): id: UUID = Field(default_factory=uuid4, primary_key=True) board_id: UUID = Field(foreign_key="boards.id", index=True) + agent_id: UUID | None = Field(default=None, foreign_key="agents.id", index=True) description: str enabled: bool = Field(default=True, index=True) created_at: datetime = Field(default_factory=utcnow) diff --git a/backend/app/schemas/board_webhooks.py b/backend/app/schemas/board_webhooks.py index 7a5348c8..0c39908b 100644 --- a/backend/app/schemas/board_webhooks.py +++ b/backend/app/schemas/board_webhooks.py @@ -17,6 +17,7 @@ class BoardWebhookCreate(SQLModel): description: NonEmptyStr enabled: bool = True + agent_id: UUID | None = None class BoardWebhookUpdate(SQLModel): @@ -24,6 +25,7 @@ class BoardWebhookUpdate(SQLModel): description: NonEmptyStr | None = None enabled: bool | None = None + agent_id: UUID | None = None class BoardWebhookRead(SQLModel): @@ -31,6 +33,7 @@ class BoardWebhookRead(SQLModel): id: UUID board_id: UUID + agent_id: UUID | None = None description: str enabled: bool endpoint_path: str diff --git a/backend/app/services/webhooks/dispatch.py b/backend/app/services/webhooks/dispatch.py index 452209e1..dbb68c5c 100644 --- a/backend/app/services/webhooks/dispatch.py +++ b/backend/app/services/webhooks/dispatch.py @@ -62,15 +62,23 @@ def _webhook_message( ) -async def _notify_lead( +async def _notify_target_agent( *, session: AsyncSession, board: Board, webhook: BoardWebhook, payload: BoardWebhookPayload, ) -> None: - lead = await Agent.objects.filter_by(board_id=board.id, is_board_lead=True).first(session) - if lead is None or not lead.openclaw_session_id: + target_agent: Agent | None = None + if webhook.agent_id is not None: + target_agent = await Agent.objects.filter_by(id=webhook.agent_id, board_id=board.id).first( + session + ) + if target_agent is None: + target_agent = await Agent.objects.filter_by(board_id=board.id, is_board_lead=True).first( + session + ) + if target_agent is None or not target_agent.openclaw_session_id: return dispatch = GatewayDispatchService(session) @@ -80,9 +88,9 @@ async def _notify_lead( message = _webhook_message(board=board, webhook=webhook, payload=payload) await dispatch.try_send_agent_message( - session_key=lead.openclaw_session_id, + session_key=target_agent.openclaw_session_id, config=config, - agent_name=lead.name, + agent_name=target_agent.name, message=message, deliver=False, ) @@ -160,7 +168,7 @@ async def _process_single_item(item: QueuedInboundDelivery) -> None: return board, webhook, payload = loaded - await _notify_lead(session=session, board=board, webhook=webhook, payload=payload) + await _notify_target_agent(session=session, board=board, webhook=webhook, payload=payload) await session.commit() diff --git a/backend/migrations/versions/b7a1d9c3e4f5_add_agent_id_to_board_webhooks.py b/backend/migrations/versions/b7a1d9c3e4f5_add_agent_id_to_board_webhooks.py new file mode 100644 index 00000000..41345126 --- /dev/null +++ b/backend/migrations/versions/b7a1d9c3e4f5_add_agent_id_to_board_webhooks.py @@ -0,0 +1,38 @@ +"""Add optional agent mapping to board webhooks. + +Revision ID: b7a1d9c3e4f5 +Revises: a2f6c9d4b7e8 +Create Date: 2026-02-15 14:00:00.000000 +""" + +from __future__ import annotations + +import sqlalchemy as sa +from alembic import op + + +# revision identifiers, used by Alembic. +revision = "b7a1d9c3e4f5" +down_revision = "a2f6c9d4b7e8" +branch_labels = None +depends_on = None + + +def upgrade() -> None: + """Add optional mapped agent reference on board webhooks.""" + op.add_column("board_webhooks", sa.Column("agent_id", sa.Uuid(), nullable=True)) + op.create_index("ix_board_webhooks_agent_id", "board_webhooks", ["agent_id"], unique=False) + op.create_foreign_key( + "fk_board_webhooks_agent_id_agents", + "board_webhooks", + "agents", + ["agent_id"], + ["id"], + ) + + +def downgrade() -> None: + """Remove optional mapped agent reference from board webhooks.""" + op.drop_constraint("fk_board_webhooks_agent_id_agents", "board_webhooks", type_="foreignkey") + op.drop_index("ix_board_webhooks_agent_id", table_name="board_webhooks") + op.drop_column("board_webhooks", "agent_id") diff --git a/backend/tests/test_webhook_dispatch.py b/backend/tests/test_webhook_dispatch.py index 5a724a0d..29274e81 100644 --- a/backend/tests/test_webhook_dispatch.py +++ b/backend/tests/test_webhook_dispatch.py @@ -5,6 +5,7 @@ from __future__ import annotations import json from datetime import UTC, datetime +from types import SimpleNamespace from uuid import UUID, uuid4 import pytest @@ -222,6 +223,128 @@ async def test_dispatch_flush_recovers_from_dequeue_error(monkeypatch: pytest.Mo assert processed == 1 +@pytest.mark.asyncio +async def test_notify_target_agent_prefers_mapped_agent(monkeypatch: pytest.MonkeyPatch) -> None: + agent_id = uuid4() + mapped_agent = SimpleNamespace( + id=agent_id, + name="Mapped Agent", + openclaw_session_id="mapped:session", + ) + lead_agent = SimpleNamespace( + id=uuid4(), + name="Lead Agent", + openclaw_session_id="lead:session", + ) + sent: list[dict[str, str]] = [] + + class _FakeAgentObjects: + def filter_by(self, **kwargs: object) -> _FakeAgentObjects: + self._kwargs = kwargs + return self + + async def first(self, session: object) -> object | None: + del session + if self._kwargs.get("id") == agent_id: + return mapped_agent + if self._kwargs.get("is_board_lead") is True: + return lead_agent + return None + + class _FakeDispatchService: + def __init__(self, session: object) -> None: + del session + + async def optional_gateway_config_for_board(self, board: object) -> object: + del board + return object() + + async def try_send_agent_message( + self, + *, + session_key: str, + config: object, + agent_name: str, + message: str, + deliver: bool = False, + ) -> None: + del config, message, deliver + sent.append({"session_key": session_key, "agent_name": agent_name}) + + monkeypatch.setattr(dispatch.Agent, "objects", _FakeAgentObjects()) + monkeypatch.setattr(dispatch, "GatewayDispatchService", _FakeDispatchService) + + webhook = SimpleNamespace(id=uuid4(), description="desc", agent_id=agent_id) + board = SimpleNamespace(id=uuid4(), name="Board") + payload = SimpleNamespace(id=uuid4(), payload={"event": "test"}) + + await dispatch._notify_target_agent( + session=SimpleNamespace(), + board=board, + webhook=webhook, + payload=payload, + ) + + assert sent == [{"session_key": "mapped:session", "agent_name": "Mapped Agent"}] + + +@pytest.mark.asyncio +async def test_notify_target_agent_falls_back_to_lead(monkeypatch: pytest.MonkeyPatch) -> None: + lead_agent = SimpleNamespace( + id=uuid4(), + name="Lead Agent", + openclaw_session_id="lead:session", + ) + sent: list[dict[str, str]] = [] + + class _FakeAgentObjects: + def filter_by(self, **kwargs: object) -> _FakeAgentObjects: + self._kwargs = kwargs + return self + + async def first(self, session: object) -> object | None: + del session + if self._kwargs.get("is_board_lead") is True: + return lead_agent + return None + + class _FakeDispatchService: + def __init__(self, session: object) -> None: + del session + + async def optional_gateway_config_for_board(self, board: object) -> object: + del board + return object() + + async def try_send_agent_message( + self, + *, + session_key: str, + config: object, + agent_name: str, + message: str, + deliver: bool = False, + ) -> None: + del config, message, deliver + sent.append({"session_key": session_key, "agent_name": agent_name}) + + monkeypatch.setattr(dispatch.Agent, "objects", _FakeAgentObjects()) + monkeypatch.setattr(dispatch, "GatewayDispatchService", _FakeDispatchService) + + webhook = SimpleNamespace(id=uuid4(), description="desc", agent_id=None) + board = SimpleNamespace(id=uuid4(), name="Board") + payload = SimpleNamespace(id=uuid4(), payload={"event": "test"}) + + await dispatch._notify_target_agent( + session=SimpleNamespace(), + board=board, + webhook=webhook, + payload=payload, + ) + + assert sent == [{"session_key": "lead:session", "agent_name": "Lead Agent"}] + + def test_dispatch_run_entrypoint_calls_async_flush(monkeypatch: pytest.MonkeyPatch) -> None: called: list[bool] = [] diff --git a/frontend/src/api/generated/agent/agent.ts b/frontend/src/api/generated/agent/agent.ts index 904aa3f3..dbd5bfba 100644 --- a/frontend/src/api/generated/agent/agent.ts +++ b/frontend/src/api/generated/agent/agent.ts @@ -40,6 +40,7 @@ import type { GatewayMainAskUserRequest, GatewayMainAskUserResponse, HTTPValidationError, + LLMErrorResponse, LimitOffsetPageTypeVarCustomizedAgentRead, LimitOffsetPageTypeVarCustomizedApprovalRead, LimitOffsetPageTypeVarCustomizedBoardMemoryRead, @@ -67,344 +68,10 @@ import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; /** - * List agents visible to the caller, optionally filtered by board. + * Return boards the authenticated agent can access. -Useful for lead delegation and workload balancing. - * @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 }; -} - -/** - * Create a new board agent as lead. - -The new agent is always forced onto the caller's board (`board_id` override). - * @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, - ); -}; -/** - * List boards visible to the authenticated agent. - -Board-scoped agents typically see only their assigned board. -Main agents may see multiple boards when permitted by auth scope. - * @summary List Boards +Use this as a discovery step before board-scoped operations. + * @summary List boards visible to the caller */ export type listBoardsApiV1AgentBoardsGetResponse200 = { data: LimitOffsetPageTypeVarCustomizedBoardRead; @@ -578,7 +245,7 @@ export function useListBoardsApiV1AgentBoardsGet< queryKey: DataTag; }; /** - * @summary List Boards + * @summary List boards visible to the caller */ export function useListBoardsApiV1AgentBoardsGet< @@ -614,11 +281,10 @@ export function useListBoardsApiV1AgentBoardsGet< } /** - * Return one board if the authenticated agent can access it. + * Read a single board entity if it is visible to the authenticated agent. -Use this when an agent needs board metadata (objective, status, target date) -before planning or posting updates. - * @summary Get Board +Use for targeted planning and routing decisions. + * @summary Fetch a board by id */ export type getBoardApiV1AgentBoardsBoardIdGetResponse200 = { data: BoardRead; @@ -784,7 +450,7 @@ export function useGetBoardApiV1AgentBoardsBoardIdGet< queryKey: DataTag; }; /** - * @summary Get Board + * @summary Fetch a board by id */ export function useGetBoardApiV1AgentBoardsBoardIdGet< @@ -820,802 +486,36 @@ export function useGetBoardApiV1AgentBoardsBoardIdGet< } /** - * Delete a board agent as board lead. + * Return agents visible to the caller, optionally filtered by board. -Cleans up runtime/session state through lifecycle services. - * @summary Delete Board Agent +Use when downstream routing or coordination needs recipient actors. + * @summary List visible agents */ -export type deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponse200 = - { - data: OkResponse; - status: 200; - }; - -export type deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponseSuccess = - deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponseError = - deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponse = - | deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponseSuccess - | deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteResponseError; - -export const getDeleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteUrl = - (boardId: string, agentId: string) => { - return `/api/v1/agent/boards/${boardId}/agents/${agentId}`; - }; - -export const deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete = - async ( - boardId: string, - agentId: string, - options?: RequestInit, - ): Promise => { - return customFetch( - getDeleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteUrl( - boardId, - agentId, - ), - { - ...options, - method: "DELETE", - }, - ); - }; - -export const getDeleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete - > - >, - TError, - { boardId: string; agentId: string }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType< - typeof deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete - > - >, - TError, - { boardId: string; agentId: string }, - TContext - > => { - const mutationKey = [ - "deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete", - ]; - 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 deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete - > - >, - { boardId: string; agentId: string } - > = (props) => { - const { boardId, agentId } = props ?? {}; - - return deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete( - boardId, - agentId, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type DeleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteMutationResult = - NonNullable< - Awaited< - ReturnType< - typeof deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete - > - > - >; - -export type DeleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Board Agent - */ -export const useDeleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete - > - >, - TError, - { boardId: string; agentId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType< - typeof deleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDelete - > - >, - TError, - { boardId: string; agentId: string }, - TContext -> => { - return useMutation( - getDeleteBoardAgentApiV1AgentBoardsBoardIdAgentsAgentIdDeleteMutationOptions( - options, - ), - queryClient, - ); -}; -/** - * Send a direct nudge to one board agent. - -Lead-only endpoint for stale or blocked in-progress work. - * @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, - ); -}; -/** - * Fetch an agent's SOUL.md content. - -Allowed for board lead, or for an agent reading its own SOUL. - * @summary Get Agent Soul - */ -export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse200 = - { - data: string; - status: 200; - }; - -export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseSuccess = - getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse200 & { - headers: Headers; - }; -export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseError = - getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse422 & { - headers: Headers; - }; - -export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse = - | getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseSuccess - | getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseError; - -export const getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetUrl = ( - boardId: string, - agentId: string, -) => { - return `/api/v1/agent/boards/${boardId}/agents/${agentId}/soul`; -}; - -export const getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet = async ( - boardId: string, - agentId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetUrl( - boardId, - agentId, - ), - { - ...options, - method: "GET", - }, - ); -}; - -export const getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryKey = - (boardId: string, agentId: string) => { - return [`/api/v1/agent/boards/${boardId}/agents/${agentId}/soul`] as const; - }; - -export const getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryOptions = - < - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, - >( - boardId: string, - agentId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - ) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryKey( - boardId, - agentId, - ); - - const queryFn: QueryFunction< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - > - > = ({ signal }) => - getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet( - boardId, - agentId, - { signal, ...requestOptions }, - ); - - return { - queryKey, - queryFn, - enabled: !!(boardId && agentId), - ...queryOptions, - } as UseQueryOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - TData - > & { queryKey: DataTag }; - }; - -export type GetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type GetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryError = - HTTPValidationError; - -export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - agentId: string, - options: { - query: Partial< - UseQueryOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - TData - > - > & - Pick< - DefinedInitialDataOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): DefinedUseQueryResult & { - queryKey: DataTag; -}; -export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - agentId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - TData - > - > & - Pick< - UndefinedInitialDataOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - agentId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary Get Agent Soul - */ - -export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - agentId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType< - typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet - > - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryOptions( - boardId, - agentId, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * Update an agent's SOUL.md template in DB and gateway. - -Lead-only endpoint. Persists as `soul_template` for future reprovisioning. - * @summary Update Agent Soul - */ -export type updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponse200 = - { - data: OkResponse; - status: 200; - }; - -export type updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponseSuccess = - updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponse200 & { - headers: Headers; - }; -export type updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponseError = - updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponse422 & { - headers: Headers; - }; - -export type updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponse = - | updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponseSuccess - | updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutResponseError; - -export const getUpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutUrl = - (boardId: string, agentId: string) => { - return `/api/v1/agent/boards/${boardId}/agents/${agentId}/soul`; - }; - -export const updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut = - async ( - boardId: string, - agentId: string, - soulUpdateRequest: SoulUpdateRequest, - options?: RequestInit, - ): Promise => { - return customFetch( - getUpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutUrl( - boardId, - agentId, - ), - { - ...options, - method: "PUT", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(soulUpdateRequest), - }, - ); - }; - -export const getUpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut - > - >, - TError, - { boardId: string; agentId: string; data: SoulUpdateRequest }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType< - typeof updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut - > - >, - TError, - { boardId: string; agentId: string; data: SoulUpdateRequest }, - TContext - > => { - const mutationKey = [ - "updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut", - ]; - 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 updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut - > - >, - { boardId: string; agentId: string; data: SoulUpdateRequest } - > = (props) => { - const { boardId, agentId, data } = props ?? {}; - - return updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut( - boardId, - agentId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type UpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutMutationResult = - NonNullable< - Awaited< - ReturnType< - typeof updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut - > - > - >; -export type UpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutMutationBody = - SoulUpdateRequest; -export type UpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutMutationError = - HTTPValidationError; - -/** - * @summary Update Agent Soul - */ -export const useUpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut - > - >, - TError, - { boardId: string; agentId: string; data: SoulUpdateRequest }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType< - typeof updateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPut - > - >, - TError, - { boardId: string; agentId: string; data: SoulUpdateRequest }, - TContext -> => { - return useMutation( - getUpdateAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulPutMutationOptions( - options, - ), - queryClient, - ); -}; -/** - * List approvals for a board. - -Use status filtering to process pending approvals efficiently. - * @summary List Approvals - */ -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse200 = { - data: LimitOffsetPageTypeVarCustomizedApprovalRead; +export type listAgentsApiV1AgentAgentsGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedAgentRead; status: 200; }; -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse422 = { +export type listAgentsApiV1AgentAgentsGetResponse422 = { data: HTTPValidationError; status: 422; }; -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseSuccess = - listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse200 & { +export type listAgentsApiV1AgentAgentsGetResponseSuccess = + listAgentsApiV1AgentAgentsGetResponse200 & { headers: Headers; }; -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseError = - listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse422 & { +export type listAgentsApiV1AgentAgentsGetResponseError = + listAgentsApiV1AgentAgentsGetResponse422 & { headers: Headers; }; -export type listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponse = - | listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseSuccess - | listApprovalsApiV1AgentBoardsBoardIdApprovalsGetResponseError; +export type listAgentsApiV1AgentAgentsGetResponse = + | listAgentsApiV1AgentAgentsGetResponseSuccess + | listAgentsApiV1AgentAgentsGetResponseError; -export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetUrl = ( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, +export const getListAgentsApiV1AgentAgentsGetUrl = ( + params?: ListAgentsApiV1AgentAgentsGetParams, ) => { const normalizedParams = new URLSearchParams(); @@ -1628,17 +528,16 @@ export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetUrl = ( const stringifiedParams = normalizedParams.toString(); return stringifiedParams.length > 0 - ? `/api/v1/agent/boards/${boardId}/approvals?${stringifiedParams}` - : `/api/v1/agent/boards/${boardId}/approvals`; + ? `/api/v1/agent/agents?${stringifiedParams}` + : `/api/v1/agent/agents`; }; -export const listApprovalsApiV1AgentBoardsBoardIdApprovalsGet = async ( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, +export const listAgentsApiV1AgentAgentsGet = async ( + params?: ListAgentsApiV1AgentAgentsGetParams, options?: RequestInit, -): Promise => { - return customFetch( - getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetUrl(boardId, params), +): Promise => { + return customFetch( + getListAgentsApiV1AgentAgentsGetUrl(params), { ...options, method: "GET", @@ -1646,30 +545,21 @@ export const listApprovalsApiV1AgentBoardsBoardIdApprovalsGet = async ( ); }; -export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryKey = ( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, +export const getListAgentsApiV1AgentAgentsGetQueryKey = ( + params?: ListAgentsApiV1AgentAgentsGetParams, ) => { - return [ - `/api/v1/agent/boards/${boardId}/approvals`, - ...(params ? [params] : []), - ] as const; + return [`/api/v1/agent/agents`, ...(params ? [params] : [])] as const; }; -export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryOptions = < - TData = Awaited< - ReturnType - >, +export const getListAgentsApiV1AgentAgentsGetQueryOptions = < + TData = Awaited>, TError = HTTPValidationError, >( - boardId: string, - params?: ListApprovalsApiV1AgentBoardsBoardIdApprovalsGetParams, + params?: ListAgentsApiV1AgentAgentsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited< - ReturnType - >, + Awaited>, TError, TData > @@ -1680,1172 +570,43 @@ export const getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryOptions = < const { query: queryOptions, request: requestOptions } = options ?? {}; const queryKey = - queryOptions?.queryKey ?? - getListApprovalsApiV1AgentBoardsBoardIdApprovalsGetQueryKey( - boardId, - params, - ); + queryOptions?.queryKey ?? getListAgentsApiV1AgentAgentsGetQueryKey(params); const queryFn: QueryFunction< - Awaited> + Awaited> > = ({ signal }) => - listApprovalsApiV1AgentBoardsBoardIdApprovalsGet(boardId, params, { - signal, - ...requestOptions, - }); + listAgentsApiV1AgentAgentsGet(params, { signal, ...requestOptions }); - return { - queryKey, - queryFn, - enabled: !!boardId, - ...queryOptions, - } as UseQueryOptions< - Awaited< - ReturnType - >, + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, 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 }; -} - -/** - * Create an approval request for risky or low-confidence actions. - -Include `task_id` or `task_ids` to scope the decision precisely. - * @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, - ); -}; -/** - * Ask the human via gateway-main external channels. - -Lead-only endpoint for situations where board chat is not responsive. - * @summary Ask User Via Gateway Main - */ -export type askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponse200 = - { - data: GatewayMainAskUserResponse; - status: 200; - }; - -export type askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponseSuccess = - askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponse200 & { - headers: Headers; - }; -export type askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponseError = - askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponse422 & { - headers: Headers; - }; - -export type askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponse = - - | askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponseSuccess - | askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostResponseError; - -export const getAskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostUrl = - (boardId: string) => { - return `/api/v1/agent/boards/${boardId}/gateway/main/ask-user`; - }; - -export const askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost = - async ( - boardId: string, - gatewayMainAskUserRequest: GatewayMainAskUserRequest, - options?: RequestInit, - ): Promise => { - return customFetch( - getAskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostUrl( - boardId, - ), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(gatewayMainAskUserRequest), - }, - ); - }; - -export const getAskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost - > - >, - TError, - { boardId: string; data: GatewayMainAskUserRequest }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType< - typeof askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost - > - >, - TError, - { boardId: string; data: GatewayMainAskUserRequest }, - TContext - > => { - const mutationKey = [ - "askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost", - ]; - 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 askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost - > - >, - { boardId: string; data: GatewayMainAskUserRequest } - > = (props) => { - const { boardId, data } = props ?? {}; - - return askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost( - boardId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type AskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostMutationResult = - NonNullable< - Awaited< - ReturnType< - typeof askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost - > - > - >; -export type AskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostMutationBody = - GatewayMainAskUserRequest; -export type AskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostMutationError = - HTTPValidationError; - -/** - * @summary Ask User Via Gateway Main - */ -export const useAskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost = - ( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost - > - >, - TError, - { boardId: string; data: GatewayMainAskUserRequest }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, - ): UseMutationResult< - Awaited< - ReturnType< - typeof askUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPost - > - >, - TError, - { boardId: string; data: GatewayMainAskUserRequest }, - TContext - > => { - return useMutation( - getAskUserViaGatewayMainApiV1AgentBoardsBoardIdGatewayMainAskUserPostMutationOptions( - options, - ), - queryClient, - ); - }; -/** - * List board memory with optional chat filtering. - -Use `is_chat=false` for durable context and `is_chat=true` for board chat. - * @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 }; -} - -/** - * Create a board memory entry. - -Use tags to indicate purpose (e.g. `chat`, `decision`, `plan`, `handoff`). - * @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, - ); -}; -/** - * Apply board onboarding updates from an agent workflow. - -Used during structured objective/success-metric intake loops. - * @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, - ); -}; -/** - * List available tags for the board's organization. - -Use returned ids in task create/update payloads (`tag_ids`). - * @summary List Tags - */ -export type listTagsApiV1AgentBoardsBoardIdTagsGetResponse200 = { - data: TagRef[]; - status: 200; -}; - -export type listTagsApiV1AgentBoardsBoardIdTagsGetResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type listTagsApiV1AgentBoardsBoardIdTagsGetResponseSuccess = - listTagsApiV1AgentBoardsBoardIdTagsGetResponse200 & { - headers: Headers; - }; -export type listTagsApiV1AgentBoardsBoardIdTagsGetResponseError = - listTagsApiV1AgentBoardsBoardIdTagsGetResponse422 & { - headers: Headers; - }; - -export type listTagsApiV1AgentBoardsBoardIdTagsGetResponse = - | listTagsApiV1AgentBoardsBoardIdTagsGetResponseSuccess - | listTagsApiV1AgentBoardsBoardIdTagsGetResponseError; - -export const getListTagsApiV1AgentBoardsBoardIdTagsGetUrl = ( - boardId: string, -) => { - return `/api/v1/agent/boards/${boardId}/tags`; -}; - -export const listTagsApiV1AgentBoardsBoardIdTagsGet = async ( - boardId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getListTagsApiV1AgentBoardsBoardIdTagsGetUrl(boardId), - { - ...options, - method: "GET", - }, - ); -}; - -export const getListTagsApiV1AgentBoardsBoardIdTagsGetQueryKey = ( - boardId: string, -) => { - return [`/api/v1/agent/boards/${boardId}/tags`] as const; -}; - -export const getListTagsApiV1AgentBoardsBoardIdTagsGetQueryOptions = < - TData = Awaited>, - TError = HTTPValidationError, ->( - boardId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, -) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getListTagsApiV1AgentBoardsBoardIdTagsGetQueryKey(boardId); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - listTagsApiV1AgentBoardsBoardIdTagsGet(boardId, { - signal, - ...requestOptions, - }); - - return { - queryKey, - queryFn, - enabled: !!boardId, - ...queryOptions, - } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type ListTagsApiV1AgentBoardsBoardIdTagsGetQueryResult = NonNullable< - Awaited> +export type ListAgentsApiV1AgentAgentsGetQueryResult = NonNullable< + Awaited> >; -export type ListTagsApiV1AgentBoardsBoardIdTagsGetQueryError = - HTTPValidationError; +export type ListAgentsApiV1AgentAgentsGetQueryError = HTTPValidationError; -export function useListTagsApiV1AgentBoardsBoardIdTagsGet< - TData = Awaited>, +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, TError = HTTPValidationError, >( - boardId: string, + params: undefined | ListAgentsApiV1AgentAgentsGetParams, options: { query: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< DefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -2855,24 +616,24 @@ export function useListTagsApiV1AgentBoardsBoardIdTagsGet< ): DefinedUseQueryResult & { queryKey: DataTag; }; -export function useListTagsApiV1AgentBoardsBoardIdTagsGet< - TData = Awaited>, +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, TError = HTTPValidationError, >( - boardId: string, + params?: ListAgentsApiV1AgentAgentsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< UndefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -2882,15 +643,15 @@ export function useListTagsApiV1AgentBoardsBoardIdTagsGet< ): UseQueryResult & { queryKey: DataTag; }; -export function useListTagsApiV1AgentBoardsBoardIdTagsGet< - TData = Awaited>, +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, TError = HTTPValidationError, >( - boardId: string, + params?: ListAgentsApiV1AgentAgentsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -2902,18 +663,18 @@ export function useListTagsApiV1AgentBoardsBoardIdTagsGet< queryKey: DataTag; }; /** - * @summary List Tags + * @summary List visible agents */ -export function useListTagsApiV1AgentBoardsBoardIdTagsGet< - TData = Awaited>, +export function useListAgentsApiV1AgentAgentsGet< + TData = Awaited>, TError = HTTPValidationError, >( - boardId: string, + params?: ListAgentsApiV1AgentAgentsGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -2924,8 +685,8 @@ export function useListTagsApiV1AgentBoardsBoardIdTagsGet< ): UseQueryResult & { queryKey: DataTag; } { - const queryOptions = getListTagsApiV1AgentBoardsBoardIdTagsGetQueryOptions( - boardId, + const queryOptions = getListAgentsApiV1AgentAgentsGetQueryOptions( + params, options, ); @@ -2937,6 +698,139 @@ export function useListTagsApiV1AgentBoardsBoardIdTagsGet< return { ...query, queryKey: queryOptions.queryKey }; } +/** + * Register a new board agent and attach it to the lead's board. + +The target board is derived from the caller identity and cannot be changed in payload. + * @summary Create a board agent as lead + */ +export type agentLeadCreateAgentResponse200 = { + data: AgentRead; + status: 200; +}; + +export type agentLeadCreateAgentResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentLeadCreateAgentResponse409 = { + data: LLMErrorResponse; + status: 409; +}; + +export type agentLeadCreateAgentResponse422 = { + data: LLMErrorResponse; + status: 422; +}; + +export type agentLeadCreateAgentResponseSuccess = + agentLeadCreateAgentResponse200 & { + headers: Headers; + }; +export type agentLeadCreateAgentResponseError = ( + | agentLeadCreateAgentResponse403 + | agentLeadCreateAgentResponse409 + | agentLeadCreateAgentResponse422 +) & { + headers: Headers; +}; + +export type agentLeadCreateAgentResponse = + | agentLeadCreateAgentResponseSuccess + | agentLeadCreateAgentResponseError; + +export const getAgentLeadCreateAgentUrl = () => { + return `/api/v1/agent/agents`; +}; + +export const agentLeadCreateAgent = async ( + agentCreate: AgentCreate, + options?: RequestInit, +): Promise => { + return customFetch( + getAgentLeadCreateAgentUrl(), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(agentCreate), + }, + ); +}; + +export const getAgentLeadCreateAgentMutationOptions = < + TError = LLMErrorResponse, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: AgentCreate }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { data: AgentCreate }, + TContext +> => { + const mutationKey = ["agentLeadCreateAgent"]; + 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 agentLeadCreateAgent(data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type AgentLeadCreateAgentMutationResult = NonNullable< + Awaited> +>; +export type AgentLeadCreateAgentMutationBody = AgentCreate; +export type AgentLeadCreateAgentMutationError = LLMErrorResponse; + +/** + * @summary Create a board agent as lead + */ +export const useAgentLeadCreateAgent = < + TError = LLMErrorResponse, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: AgentCreate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { data: AgentCreate }, + TContext +> => { + return useMutation( + getAgentLeadCreateAgentMutationOptions(options), + queryClient, + ); +}; /** * List tasks on a board with status/assignment filters. @@ -3175,48 +1069,65 @@ export function useListTasksApiV1AgentBoardsBoardIdTasksGet< } /** - * Create a task as the board lead. + * Create a new task on a board and persist lead metadata. -Lead-only endpoint. Supports dependency-aware creation via -`depends_on_task_ids`, optional `tag_ids`, and `custom_field_values`. - * @summary Create Task +Use when a lead needs to introduce new work, create dependencies, or directly assign ownership. +Do not use for task updates or comments; those are separate endpoints. + * @summary Create and assign a new board task as a lead agent */ -export type createTaskApiV1AgentBoardsBoardIdTasksPostResponse200 = { +export type agentLeadCreateTaskResponse200 = { data: TaskRead; status: 200; }; -export type createTaskApiV1AgentBoardsBoardIdTasksPostResponse422 = { - data: HTTPValidationError; +export type agentLeadCreateTaskResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentLeadCreateTaskResponse404 = { + data: LLMErrorResponse; + status: 404; +}; + +export type agentLeadCreateTaskResponse409 = { + data: LLMErrorResponse; + status: 409; +}; + +export type agentLeadCreateTaskResponse422 = { + data: LLMErrorResponse; status: 422; }; -export type createTaskApiV1AgentBoardsBoardIdTasksPostResponseSuccess = - createTaskApiV1AgentBoardsBoardIdTasksPostResponse200 & { - headers: Headers; - }; -export type createTaskApiV1AgentBoardsBoardIdTasksPostResponseError = - createTaskApiV1AgentBoardsBoardIdTasksPostResponse422 & { +export type agentLeadCreateTaskResponseSuccess = + agentLeadCreateTaskResponse200 & { headers: Headers; }; +export type agentLeadCreateTaskResponseError = ( + | agentLeadCreateTaskResponse403 + | agentLeadCreateTaskResponse404 + | agentLeadCreateTaskResponse409 + | agentLeadCreateTaskResponse422 +) & { + headers: Headers; +}; -export type createTaskApiV1AgentBoardsBoardIdTasksPostResponse = - | createTaskApiV1AgentBoardsBoardIdTasksPostResponseSuccess - | createTaskApiV1AgentBoardsBoardIdTasksPostResponseError; +export type agentLeadCreateTaskResponse = + | agentLeadCreateTaskResponseSuccess + | agentLeadCreateTaskResponseError; -export const getCreateTaskApiV1AgentBoardsBoardIdTasksPostUrl = ( - boardId: string, -) => { +export const getAgentLeadCreateTaskUrl = (boardId: string) => { return `/api/v1/agent/boards/${boardId}/tasks`; }; -export const createTaskApiV1AgentBoardsBoardIdTasksPost = async ( +export const agentLeadCreateTask = async ( boardId: string, taskCreate: TaskCreate, options?: RequestInit, -): Promise => { - return customFetch( - getCreateTaskApiV1AgentBoardsBoardIdTasksPostUrl(boardId), +): Promise => { + return customFetch( + getAgentLeadCreateTaskUrl(boardId), { ...options, method: "POST", @@ -3226,24 +1137,24 @@ export const createTaskApiV1AgentBoardsBoardIdTasksPost = async ( ); }; -export const getCreateTaskApiV1AgentBoardsBoardIdTasksPostMutationOptions = < - TError = HTTPValidationError, +export const getAgentLeadCreateTaskMutationOptions = < + TError = LLMErrorResponse, TContext = unknown, >(options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, { boardId: string; data: TaskCreate }, TContext >; request?: SecondParameter; }): UseMutationOptions< - Awaited>, + Awaited>, TError, { boardId: string; data: TaskCreate }, TContext > => { - const mutationKey = ["createTaskApiV1AgentBoardsBoardIdTasksPost"]; + const mutationKey = ["agentLeadCreateTask"]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && "mutationKey" in options.mutation && @@ -3253,39 +1164,33 @@ export const getCreateTaskApiV1AgentBoardsBoardIdTasksPostMutationOptions = < : { mutation: { mutationKey }, request: undefined }; const mutationFn: MutationFunction< - Awaited>, + Awaited>, { boardId: string; data: TaskCreate } > = (props) => { const { boardId, data } = props ?? {}; - return createTaskApiV1AgentBoardsBoardIdTasksPost( - boardId, - data, - requestOptions, - ); + return agentLeadCreateTask(boardId, data, requestOptions); }; return { mutationFn, ...mutationOptions }; }; -export type CreateTaskApiV1AgentBoardsBoardIdTasksPostMutationResult = - NonNullable< - Awaited> - >; -export type CreateTaskApiV1AgentBoardsBoardIdTasksPostMutationBody = TaskCreate; -export type CreateTaskApiV1AgentBoardsBoardIdTasksPostMutationError = - HTTPValidationError; +export type AgentLeadCreateTaskMutationResult = NonNullable< + Awaited> +>; +export type AgentLeadCreateTaskMutationBody = TaskCreate; +export type AgentLeadCreateTaskMutationError = LLMErrorResponse; /** - * @summary Create Task + * @summary Create and assign a new board task as a lead agent */ -export const useCreateTaskApiV1AgentBoardsBoardIdTasksPost = < - TError = HTTPValidationError, +export const useAgentLeadCreateTask = < + TError = LLMErrorResponse, TContext = unknown, >( options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, { boardId: string; data: TaskCreate }, TContext @@ -3294,16 +1199,227 @@ export const useCreateTaskApiV1AgentBoardsBoardIdTasksPost = < }, queryClient?: QueryClient, ): UseMutationResult< - Awaited>, + Awaited>, TError, { boardId: string; data: TaskCreate }, TContext > => { return useMutation( - getCreateTaskApiV1AgentBoardsBoardIdTasksPostMutationOptions(options), + getAgentLeadCreateTaskMutationOptions(options), queryClient, ); }; +/** + * List available tags for the board's organization. + +Use returned ids in task create/update payloads (`tag_ids`). + * @summary List Tags + */ +export type listTagsApiV1AgentBoardsBoardIdTagsGetResponse200 = { + data: TagRef[]; + status: 200; +}; + +export type listTagsApiV1AgentBoardsBoardIdTagsGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type listTagsApiV1AgentBoardsBoardIdTagsGetResponseSuccess = + listTagsApiV1AgentBoardsBoardIdTagsGetResponse200 & { + headers: Headers; + }; +export type listTagsApiV1AgentBoardsBoardIdTagsGetResponseError = + listTagsApiV1AgentBoardsBoardIdTagsGetResponse422 & { + headers: Headers; + }; + +export type listTagsApiV1AgentBoardsBoardIdTagsGetResponse = + | listTagsApiV1AgentBoardsBoardIdTagsGetResponseSuccess + | listTagsApiV1AgentBoardsBoardIdTagsGetResponseError; + +export const getListTagsApiV1AgentBoardsBoardIdTagsGetUrl = ( + boardId: string, +) => { + return `/api/v1/agent/boards/${boardId}/tags`; +}; + +export const listTagsApiV1AgentBoardsBoardIdTagsGet = async ( + boardId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getListTagsApiV1AgentBoardsBoardIdTagsGetUrl(boardId), + { + ...options, + method: "GET", + }, + ); +}; + +export const getListTagsApiV1AgentBoardsBoardIdTagsGetQueryKey = ( + boardId: string, +) => { + return [`/api/v1/agent/boards/${boardId}/tags`] as const; +}; + +export const getListTagsApiV1AgentBoardsBoardIdTagsGetQueryOptions = < + TData = Awaited>, + TError = HTTPValidationError, +>( + boardId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, +) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getListTagsApiV1AgentBoardsBoardIdTagsGetQueryKey(boardId); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + listTagsApiV1AgentBoardsBoardIdTagsGet(boardId, { + signal, + ...requestOptions, + }); + + return { + queryKey, + queryFn, + enabled: !!boardId, + ...queryOptions, + } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type ListTagsApiV1AgentBoardsBoardIdTagsGetQueryResult = NonNullable< + Awaited> +>; +export type ListTagsApiV1AgentBoardsBoardIdTagsGetQueryError = + HTTPValidationError; + +export function useListTagsApiV1AgentBoardsBoardIdTagsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + boardId: string, + options: { + query: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited>, + TError, + Awaited> + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useListTagsApiV1AgentBoardsBoardIdTagsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + boardId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited>, + TError, + Awaited> + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useListTagsApiV1AgentBoardsBoardIdTagsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + boardId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary List Tags + */ + +export function useListTagsApiV1AgentBoardsBoardIdTagsGet< + TData = Awaited>, + TError = HTTPValidationError, +>( + boardId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = getListTagsApiV1AgentBoardsBoardIdTagsGetQueryOptions( + boardId, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + /** * Update a task after board-level authorization checks. @@ -3447,6 +1563,146 @@ export const useUpdateTaskApiV1AgentBoardsBoardIdTasksTaskIdPatch = < queryClient, ); }; +/** + * Delete a board task and related records. + +This action is restricted to board lead agents. + * @summary Delete a task as board lead + */ +export type deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponse200 = { + data: OkResponse; + status: 200; +}; + +export type deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponseSuccess = + deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponseError = + deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponse = + | deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponseSuccess + | deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteResponseError; + +export const getDeleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteUrl = ( + boardId: string, + taskId: string, +) => { + return `/api/v1/agent/boards/${boardId}/tasks/${taskId}`; +}; + +export const deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDelete = async ( + boardId: string, + taskId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteUrl(boardId, taskId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getDeleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; taskId: string }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; taskId: string }, + TContext + > => { + const mutationKey = ["deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDelete"]; + 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; taskId: string } + > = (props) => { + const { boardId, taskId } = props ?? {}; + + return deleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDelete( + boardId, + taskId, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type DeleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; + +export type DeleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Delete a task as board lead + */ +export const useDeleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { boardId: string; taskId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { boardId: string; taskId: string }, + TContext +> => { + return useMutation( + getDeleteTaskApiV1AgentBoardsBoardIdTasksTaskIdDeleteMutationOptions( + options, + ), + queryClient, + ); +}; /** * List task comments visible to the authenticated agent. @@ -3946,85 +2202,341 @@ export const useCreateTaskCommentApiV1AgentBoardsBoardIdTasksTaskIdCommentsPost ); }; /** - * Send a gateway-main control message to one board lead. - * @summary Message Gateway Board Lead + * List board memory with optional chat filtering. + +Use `is_chat=false` for durable context and `is_chat=true` for board chat. + * @summary List Board Memory */ -export type messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponse200 = - { - data: GatewayLeadMessageResponse; - status: 200; - }; +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedBoardMemoryRead; + status: 200; +}; -export type messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponse422 = - { - data: HTTPValidationError; - status: 422; - }; +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; -export type messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponseSuccess = - messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponse200 & { +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseSuccess = + listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse200 & { headers: Headers; }; -export type messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponseError = - messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponse422 & { +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseError = + listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse422 & { headers: Headers; }; -export type messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponse = +export type listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponse = + | listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseSuccess + | listBoardMemoryApiV1AgentBoardsBoardIdMemoryGetResponseError; - | messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponseSuccess - | messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostResponseError; +export const getListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetUrl = ( + boardId: string, + params?: ListBoardMemoryApiV1AgentBoardsBoardIdMemoryGetParams, +) => { + const normalizedParams = new URLSearchParams(); -export const getMessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostUrl = - (boardId: string) => { - return `/api/v1/agent/gateway/boards/${boardId}/lead/message`; - }; + Object.entries(params || {}).forEach(([key, value]) => { + if (value !== undefined) { + normalizedParams.append(key, value === null ? "null" : value.toString()); + } + }); -export const messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost = - async ( - boardId: string, - gatewayLeadMessageRequest: GatewayLeadMessageRequest, - options?: RequestInit, - ): Promise => { - return customFetch( - getMessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostUrl( - boardId, - ), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(gatewayLeadMessageRequest), - }, + 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 }; +} + +/** + * Create a board memory entry. + +Use tags to indicate purpose (e.g. `chat`, `decision`, `plan`, `handoff`). + * @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 const getMessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostMutationOptions = +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< - typeof messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost - > + ReturnType >, TError, - { boardId: string; data: GatewayLeadMessageRequest }, + { boardId: string; data: BoardMemoryCreate }, TContext >; request?: SecondParameter; }): UseMutationOptions< Awaited< - ReturnType< - typeof messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost - > + ReturnType >, TError, - { boardId: string; data: GatewayLeadMessageRequest }, + { boardId: string; data: BoardMemoryCreate }, TContext > => { - const mutationKey = [ - "messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost", - ]; + const mutationKey = ["createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost"]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && "mutationKey" in options.mutation && @@ -4035,15 +2547,13 @@ export const getMessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessage const mutationFn: MutationFunction< Awaited< - ReturnType< - typeof messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost - > + ReturnType >, - { boardId: string; data: GatewayLeadMessageRequest } + { boardId: string; data: BoardMemoryCreate } > = (props) => { const { boardId, data } = props ?? {}; - return messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost( + return createBoardMemoryApiV1AgentBoardsBoardIdMemoryPost( boardId, data, requestOptions, @@ -4053,131 +2563,545 @@ export const getMessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessage return { mutationFn, ...mutationOptions }; }; -export type MessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostMutationResult = +export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationResult = NonNullable< Awaited< - ReturnType< - typeof messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost - > + ReturnType > >; -export type MessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostMutationBody = - GatewayLeadMessageRequest; -export type MessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostMutationError = +export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationBody = + BoardMemoryCreate; +export type CreateBoardMemoryApiV1AgentBoardsBoardIdMemoryPostMutationError = HTTPValidationError; /** - * @summary Message Gateway Board Lead + * @summary Create Board Memory */ -export const useMessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost = - ( - options?: { - mutation?: UseMutationOptions< +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, + ); +}; +/** + * List approvals for a board. + +Use status filtering to process pending approvals efficiently. + * @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< - typeof messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost - > + ReturnType >, TError, - { boardId: string; data: GatewayLeadMessageRequest }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, - ): UseMutationResult< - Awaited< - ReturnType< - typeof messageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePost + 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, - { boardId: string; data: GatewayLeadMessageRequest }, - TContext - > => { - return useMutation( - getMessageGatewayBoardLeadApiV1AgentGatewayBoardsBoardIdLeadMessagePostMutationOptions( - options, - ), - queryClient, - ); - }; + 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; +}; /** - * Broadcast a gateway-main control message to multiple board leads. - * @summary Broadcast Gateway Lead Message + * @summary List Approvals */ -export type broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponse200 = - { - data: GatewayLeadBroadcastResponse; - status: 200; - }; -export type broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponseSuccess = - broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponse200 & { - headers: Headers; - }; -export type broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponseError = - broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponse422 & { - headers: Headers; - }; - -export type broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponse = - - | broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponseSuccess - | broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostResponseError; - -export const getBroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostUrl = - () => { - return `/api/v1/agent/gateway/leads/broadcast`; - }; - -export const broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost = - async ( - gatewayLeadBroadcastRequest: GatewayLeadBroadcastRequest, - options?: RequestInit, - ): Promise => { - return customFetch( - getBroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostUrl(), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(gatewayLeadBroadcastRequest), - }, +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 }; +} + +/** + * Create an approval request for risky or low-confidence actions. + +Include `task_id` or `task_ids` to scope the decision precisely. + * @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 const getBroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostMutationOptions = +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< - typeof broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost - > + ReturnType >, TError, - { data: GatewayLeadBroadcastRequest }, + { boardId: string; data: ApprovalCreate }, TContext >; request?: SecondParameter; }): UseMutationOptions< Awaited< - ReturnType< - typeof broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost - > + ReturnType >, TError, - { data: GatewayLeadBroadcastRequest }, + { 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, + ); +}; +/** + * Apply board onboarding updates from an agent workflow. + +Used during structured objective/success-metric intake loops. + * @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 = [ - "broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost", + "updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost", ]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && @@ -4189,15 +3113,17 @@ export const getBroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostMu const mutationFn: MutationFunction< Awaited< - ReturnType< - typeof broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost - > + ReturnType >, - { data: GatewayLeadBroadcastRequest } + { + boardId: string; + data: BoardOnboardingAgentComplete | BoardOnboardingAgentQuestion; + } > = (props) => { - const { data } = props ?? {}; + const { boardId, data } = props ?? {}; - return broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost( + return updateOnboardingApiV1AgentBoardsBoardIdOnboardingPost( + boardId, data, requestOptions, ); @@ -4206,60 +3132,204 @@ export const getBroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostMu return { mutationFn, ...mutationOptions }; }; -export type BroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostMutationResult = +export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationResult = NonNullable< Awaited< - ReturnType< - typeof broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost - > + ReturnType > >; -export type BroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostMutationBody = - GatewayLeadBroadcastRequest; -export type BroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostMutationError = +export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationBody = + | BoardOnboardingAgentComplete + | BoardOnboardingAgentQuestion; +export type UpdateOnboardingApiV1AgentBoardsBoardIdOnboardingPostMutationError = HTTPValidationError; /** - * @summary Broadcast Gateway Lead Message + * @summary Update Onboarding */ -export const useBroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost = - ( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost - > - >, - TError, - { data: GatewayLeadBroadcastRequest }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, - ): UseMutationResult< - Awaited< - ReturnType< - typeof broadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPost - > - >, - TError, - { data: GatewayLeadBroadcastRequest }, - TContext - > => { - return useMutation( - getBroadcastGatewayLeadMessageApiV1AgentGatewayLeadsBroadcastPostMutationOptions( - options, - ), - queryClient, - ); - }; +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, + ); +}; /** - * Record heartbeat status for the authenticated agent. + * Send a direct coordination message to a specific board agent. -Heartbeats are identity-bound to the token's agent id. - * @summary Agent Heartbeat +Use this when a lead sees stalled, idle, or misaligned work. + * @summary Nudge an agent on a board + */ +export type agentLeadNudgeAgentResponse200 = { + data: OkResponse; + status: 200; +}; + +export type agentLeadNudgeAgentResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentLeadNudgeAgentResponse404 = { + data: LLMErrorResponse; + status: 404; +}; + +export type agentLeadNudgeAgentResponse422 = { + data: LLMErrorResponse; + status: 422; +}; + +export type agentLeadNudgeAgentResponse502 = { + data: LLMErrorResponse; + status: 502; +}; + +export type agentLeadNudgeAgentResponseSuccess = + agentLeadNudgeAgentResponse200 & { + headers: Headers; + }; +export type agentLeadNudgeAgentResponseError = ( + | agentLeadNudgeAgentResponse403 + | agentLeadNudgeAgentResponse404 + | agentLeadNudgeAgentResponse422 + | agentLeadNudgeAgentResponse502 +) & { + headers: Headers; +}; + +export type agentLeadNudgeAgentResponse = + | agentLeadNudgeAgentResponseSuccess + | agentLeadNudgeAgentResponseError; + +export const getAgentLeadNudgeAgentUrl = (boardId: string, agentId: string) => { + return `/api/v1/agent/boards/${boardId}/agents/${agentId}/nudge`; +}; + +export const agentLeadNudgeAgent = async ( + boardId: string, + agentId: string, + agentNudge: AgentNudge, + options?: RequestInit, +): Promise => { + return customFetch( + getAgentLeadNudgeAgentUrl(boardId, agentId), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(agentNudge), + }, + ); +}; + +export const getAgentLeadNudgeAgentMutationOptions = < + TError = LLMErrorResponse, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext +> => { + const mutationKey = ["agentLeadNudgeAgent"]; + 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; agentId: string; data: AgentNudge } + > = (props) => { + const { boardId, agentId, data } = props ?? {}; + + return agentLeadNudgeAgent(boardId, agentId, data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type AgentLeadNudgeAgentMutationResult = NonNullable< + Awaited> +>; +export type AgentLeadNudgeAgentMutationBody = AgentNudge; +export type AgentLeadNudgeAgentMutationError = LLMErrorResponse; + +/** + * @summary Nudge an agent on a board + */ +export const useAgentLeadNudgeAgent = < + TError = LLMErrorResponse, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { boardId: string; agentId: string; data: AgentNudge }, + TContext +> => { + return useMutation( + getAgentLeadNudgeAgentMutationOptions(options), + queryClient, + ); +}; +/** + * Record liveness for the authenticated agent's current status. + +Use this when the agent heartbeat loop reports status changes. + * @summary Upsert agent heartbeat */ export type agentHeartbeatApiV1AgentHeartbeatPostResponse200 = { data: AgentRead; @@ -4350,7 +3420,7 @@ export type AgentHeartbeatApiV1AgentHeartbeatPostMutationError = HTTPValidationError; /** - * @summary Agent Heartbeat + * @summary Upsert agent heartbeat */ export const useAgentHeartbeatApiV1AgentHeartbeatPost = < TError = HTTPValidationError, @@ -4377,3 +3447,993 @@ export const useAgentHeartbeatApiV1AgentHeartbeatPost = < queryClient, ); }; +/** + * Fetch an agent's SOUL.md content. + +Allowed for board lead, or for an agent reading its own SOUL. + * @summary Get Agent Soul + */ +export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse200 = + { + data: string; + status: 200; + }; + +export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseSuccess = + getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse200 & { + headers: Headers; + }; +export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseError = + getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse422 & { + headers: Headers; + }; + +export type getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponse = + | getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseSuccess + | getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetResponseError; + +export const getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetUrl = ( + boardId: string, + agentId: string, +) => { + return `/api/v1/agent/boards/${boardId}/agents/${agentId}/soul`; +}; + +export const getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet = async ( + boardId: string, + agentId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetUrl( + boardId, + agentId, + ), + { + ...options, + method: "GET", + }, + ); +}; + +export const getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryKey = + (boardId: string, agentId: string) => { + return [`/api/v1/agent/boards/${boardId}/agents/${agentId}/soul`] as const; + }; + +export const getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryOptions = + < + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, + >( + boardId: string, + agentId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + ) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryKey( + boardId, + agentId, + ); + + const queryFn: QueryFunction< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + > + > = ({ signal }) => + getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet( + boardId, + agentId, + { signal, ...requestOptions }, + ); + + return { + queryKey, + queryFn, + enabled: !!(boardId && agentId), + ...queryOptions, + } as UseQueryOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + TData + > & { queryKey: DataTag }; + }; + +export type GetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type GetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryError = + HTTPValidationError; + +export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + agentId: string, + options: { + query: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + agentId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + agentId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Get Agent Soul + */ + +export function useGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + agentId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof getAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGet + > + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getGetAgentSoulApiV1AgentBoardsBoardIdAgentsAgentIdSoulGetQueryOptions( + boardId, + agentId, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * Write SOUL.md content for a board agent and persist it for reprovisioning. + +Use this when role instructions or behavior guardrails need updates. + * @summary Update an agent's SOUL template + */ +export type agentLeadUpdateAgentSoulResponse200 = { + data: OkResponse; + status: 200; +}; + +export type agentLeadUpdateAgentSoulResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentLeadUpdateAgentSoulResponse404 = { + data: LLMErrorResponse; + status: 404; +}; + +export type agentLeadUpdateAgentSoulResponse422 = { + data: LLMErrorResponse; + status: 422; +}; + +export type agentLeadUpdateAgentSoulResponse502 = { + data: LLMErrorResponse; + status: 502; +}; + +export type agentLeadUpdateAgentSoulResponseSuccess = + agentLeadUpdateAgentSoulResponse200 & { + headers: Headers; + }; +export type agentLeadUpdateAgentSoulResponseError = ( + | agentLeadUpdateAgentSoulResponse403 + | agentLeadUpdateAgentSoulResponse404 + | agentLeadUpdateAgentSoulResponse422 + | agentLeadUpdateAgentSoulResponse502 +) & { + headers: Headers; +}; + +export type agentLeadUpdateAgentSoulResponse = + | agentLeadUpdateAgentSoulResponseSuccess + | agentLeadUpdateAgentSoulResponseError; + +export const getAgentLeadUpdateAgentSoulUrl = ( + boardId: string, + agentId: string, +) => { + return `/api/v1/agent/boards/${boardId}/agents/${agentId}/soul`; +}; + +export const agentLeadUpdateAgentSoul = async ( + boardId: string, + agentId: string, + soulUpdateRequest: SoulUpdateRequest, + options?: RequestInit, +): Promise => { + return customFetch( + getAgentLeadUpdateAgentSoulUrl(boardId, agentId), + { + ...options, + method: "PUT", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(soulUpdateRequest), + }, + ); +}; + +export const getAgentLeadUpdateAgentSoulMutationOptions = < + TError = LLMErrorResponse, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string; data: SoulUpdateRequest }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string; data: SoulUpdateRequest }, + TContext +> => { + const mutationKey = ["agentLeadUpdateAgentSoul"]; + 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; agentId: string; data: SoulUpdateRequest } + > = (props) => { + const { boardId, agentId, data } = props ?? {}; + + return agentLeadUpdateAgentSoul(boardId, agentId, data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type AgentLeadUpdateAgentSoulMutationResult = NonNullable< + Awaited> +>; +export type AgentLeadUpdateAgentSoulMutationBody = SoulUpdateRequest; +export type AgentLeadUpdateAgentSoulMutationError = LLMErrorResponse; + +/** + * @summary Update an agent's SOUL template + */ +export const useAgentLeadUpdateAgentSoul = < + TError = LLMErrorResponse, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string; data: SoulUpdateRequest }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { boardId: string; agentId: string; data: SoulUpdateRequest }, + TContext +> => { + return useMutation( + getAgentLeadUpdateAgentSoulMutationOptions(options), + queryClient, + ); +}; +/** + * Permanently remove a board agent and tear down associated lifecycle state. + +Use sparingly; prefer reassignment for continuity-sensitive teams. + * @summary Delete a board agent as lead + */ +export type agentLeadDeleteBoardAgentResponse200 = { + data: OkResponse; + status: 200; +}; + +export type agentLeadDeleteBoardAgentResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentLeadDeleteBoardAgentResponse404 = { + data: LLMErrorResponse; + status: 404; +}; + +export type agentLeadDeleteBoardAgentResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type agentLeadDeleteBoardAgentResponseSuccess = + agentLeadDeleteBoardAgentResponse200 & { + headers: Headers; + }; +export type agentLeadDeleteBoardAgentResponseError = ( + | agentLeadDeleteBoardAgentResponse403 + | agentLeadDeleteBoardAgentResponse404 + | agentLeadDeleteBoardAgentResponse422 +) & { + headers: Headers; +}; + +export type agentLeadDeleteBoardAgentResponse = + | agentLeadDeleteBoardAgentResponseSuccess + | agentLeadDeleteBoardAgentResponseError; + +export const getAgentLeadDeleteBoardAgentUrl = ( + boardId: string, + agentId: string, +) => { + return `/api/v1/agent/boards/${boardId}/agents/${agentId}`; +}; + +export const agentLeadDeleteBoardAgent = async ( + boardId: string, + agentId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getAgentLeadDeleteBoardAgentUrl(boardId, agentId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getAgentLeadDeleteBoardAgentMutationOptions = < + TError = LLMErrorResponse | HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string }, + TContext +> => { + const mutationKey = ["agentLeadDeleteBoardAgent"]; + 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; agentId: string } + > = (props) => { + const { boardId, agentId } = props ?? {}; + + return agentLeadDeleteBoardAgent(boardId, agentId, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type AgentLeadDeleteBoardAgentMutationResult = NonNullable< + Awaited> +>; + +export type AgentLeadDeleteBoardAgentMutationError = + | LLMErrorResponse + | HTTPValidationError; + +/** + * @summary Delete a board agent as lead + */ +export const useAgentLeadDeleteBoardAgent = < + TError = LLMErrorResponse | HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; agentId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { boardId: string; agentId: string }, + TContext +> => { + return useMutation( + getAgentLeadDeleteBoardAgentMutationOptions(options), + queryClient, + ); +}; +/** + * Escalate a high-impact decision or ambiguity through the gateway-main interaction channel. + +Use when lead-level context needs human confirmation or consent. + * @summary Ask the human via gateway-main + */ +export type agentLeadAskUserViaGatewayMainResponse200 = { + data: GatewayMainAskUserResponse; + status: 200; +}; + +export type agentLeadAskUserViaGatewayMainResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentLeadAskUserViaGatewayMainResponse404 = { + data: LLMErrorResponse; + status: 404; +}; + +export type agentLeadAskUserViaGatewayMainResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type agentLeadAskUserViaGatewayMainResponse502 = { + data: LLMErrorResponse; + status: 502; +}; + +export type agentLeadAskUserViaGatewayMainResponseSuccess = + agentLeadAskUserViaGatewayMainResponse200 & { + headers: Headers; + }; +export type agentLeadAskUserViaGatewayMainResponseError = ( + | agentLeadAskUserViaGatewayMainResponse403 + | agentLeadAskUserViaGatewayMainResponse404 + | agentLeadAskUserViaGatewayMainResponse422 + | agentLeadAskUserViaGatewayMainResponse502 +) & { + headers: Headers; +}; + +export type agentLeadAskUserViaGatewayMainResponse = + | agentLeadAskUserViaGatewayMainResponseSuccess + | agentLeadAskUserViaGatewayMainResponseError; + +export const getAgentLeadAskUserViaGatewayMainUrl = (boardId: string) => { + return `/api/v1/agent/boards/${boardId}/gateway/main/ask-user`; +}; + +export const agentLeadAskUserViaGatewayMain = async ( + boardId: string, + gatewayMainAskUserRequest: GatewayMainAskUserRequest, + options?: RequestInit, +): Promise => { + return customFetch( + getAgentLeadAskUserViaGatewayMainUrl(boardId), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(gatewayMainAskUserRequest), + }, + ); +}; + +export const getAgentLeadAskUserViaGatewayMainMutationOptions = < + TError = LLMErrorResponse | HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; data: GatewayMainAskUserRequest }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { boardId: string; data: GatewayMainAskUserRequest }, + TContext +> => { + const mutationKey = ["agentLeadAskUserViaGatewayMain"]; + 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; data: GatewayMainAskUserRequest } + > = (props) => { + const { boardId, data } = props ?? {}; + + return agentLeadAskUserViaGatewayMain(boardId, data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type AgentLeadAskUserViaGatewayMainMutationResult = NonNullable< + Awaited> +>; +export type AgentLeadAskUserViaGatewayMainMutationBody = + GatewayMainAskUserRequest; +export type AgentLeadAskUserViaGatewayMainMutationError = + | LLMErrorResponse + | HTTPValidationError; + +/** + * @summary Ask the human via gateway-main + */ +export const useAgentLeadAskUserViaGatewayMain = < + TError = LLMErrorResponse | HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; data: GatewayMainAskUserRequest }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { boardId: string; data: GatewayMainAskUserRequest }, + TContext +> => { + return useMutation( + getAgentLeadAskUserViaGatewayMainMutationOptions(options), + queryClient, + ); +}; +/** + * Route a direct lead handoff or question from an agent to the board lead. + +Use when a lead requires explicit, board-scoped routing. + * @summary Message board lead via gateway-main + */ +export type agentMainMessageBoardLeadResponse200 = { + data: GatewayLeadMessageResponse; + status: 200; +}; + +export type agentMainMessageBoardLeadResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentMainMessageBoardLeadResponse404 = { + data: LLMErrorResponse; + status: 404; +}; + +export type agentMainMessageBoardLeadResponse422 = { + data: LLMErrorResponse; + status: 422; +}; + +export type agentMainMessageBoardLeadResponse502 = { + data: LLMErrorResponse; + status: 502; +}; + +export type agentMainMessageBoardLeadResponseSuccess = + agentMainMessageBoardLeadResponse200 & { + headers: Headers; + }; +export type agentMainMessageBoardLeadResponseError = ( + | agentMainMessageBoardLeadResponse403 + | agentMainMessageBoardLeadResponse404 + | agentMainMessageBoardLeadResponse422 + | agentMainMessageBoardLeadResponse502 +) & { + headers: Headers; +}; + +export type agentMainMessageBoardLeadResponse = + | agentMainMessageBoardLeadResponseSuccess + | agentMainMessageBoardLeadResponseError; + +export const getAgentMainMessageBoardLeadUrl = (boardId: string) => { + return `/api/v1/agent/gateway/boards/${boardId}/lead/message`; +}; + +export const agentMainMessageBoardLead = async ( + boardId: string, + gatewayLeadMessageRequest: GatewayLeadMessageRequest, + options?: RequestInit, +): Promise => { + return customFetch( + getAgentMainMessageBoardLeadUrl(boardId), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(gatewayLeadMessageRequest), + }, + ); +}; + +export const getAgentMainMessageBoardLeadMutationOptions = < + TError = LLMErrorResponse, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; data: GatewayLeadMessageRequest }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { boardId: string; data: GatewayLeadMessageRequest }, + TContext +> => { + const mutationKey = ["agentMainMessageBoardLead"]; + 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; data: GatewayLeadMessageRequest } + > = (props) => { + const { boardId, data } = props ?? {}; + + return agentMainMessageBoardLead(boardId, data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type AgentMainMessageBoardLeadMutationResult = NonNullable< + Awaited> +>; +export type AgentMainMessageBoardLeadMutationBody = GatewayLeadMessageRequest; +export type AgentMainMessageBoardLeadMutationError = LLMErrorResponse; + +/** + * @summary Message board lead via gateway-main + */ +export const useAgentMainMessageBoardLead = < + TError = LLMErrorResponse, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { boardId: string; data: GatewayLeadMessageRequest }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { boardId: string; data: GatewayLeadMessageRequest }, + TContext +> => { + return useMutation( + getAgentMainMessageBoardLeadMutationOptions(options), + queryClient, + ); +}; +/** + * Send a shared coordination request to multiple board leads. + +Use for urgent cross-board or multi-lead fan-out patterns. + * @summary Broadcast a message to board leads via gateway-main + */ +export type agentMainBroadcastLeadMessageResponse200 = { + data: GatewayLeadBroadcastResponse; + status: 200; +}; + +export type agentMainBroadcastLeadMessageResponse403 = { + data: LLMErrorResponse; + status: 403; +}; + +export type agentMainBroadcastLeadMessageResponse404 = { + data: LLMErrorResponse; + status: 404; +}; + +export type agentMainBroadcastLeadMessageResponse422 = { + data: LLMErrorResponse; + status: 422; +}; + +export type agentMainBroadcastLeadMessageResponse502 = { + data: LLMErrorResponse; + status: 502; +}; + +export type agentMainBroadcastLeadMessageResponseSuccess = + agentMainBroadcastLeadMessageResponse200 & { + headers: Headers; + }; +export type agentMainBroadcastLeadMessageResponseError = ( + | agentMainBroadcastLeadMessageResponse403 + | agentMainBroadcastLeadMessageResponse404 + | agentMainBroadcastLeadMessageResponse422 + | agentMainBroadcastLeadMessageResponse502 +) & { + headers: Headers; +}; + +export type agentMainBroadcastLeadMessageResponse = + | agentMainBroadcastLeadMessageResponseSuccess + | agentMainBroadcastLeadMessageResponseError; + +export const getAgentMainBroadcastLeadMessageUrl = () => { + return `/api/v1/agent/gateway/leads/broadcast`; +}; + +export const agentMainBroadcastLeadMessage = async ( + gatewayLeadBroadcastRequest: GatewayLeadBroadcastRequest, + options?: RequestInit, +): Promise => { + return customFetch( + getAgentMainBroadcastLeadMessageUrl(), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(gatewayLeadBroadcastRequest), + }, + ); +}; + +export const getAgentMainBroadcastLeadMessageMutationOptions = < + TError = LLMErrorResponse, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: GatewayLeadBroadcastRequest }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { data: GatewayLeadBroadcastRequest }, + TContext +> => { + const mutationKey = ["agentMainBroadcastLeadMessage"]; + 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: GatewayLeadBroadcastRequest } + > = (props) => { + const { data } = props ?? {}; + + return agentMainBroadcastLeadMessage(data, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type AgentMainBroadcastLeadMessageMutationResult = NonNullable< + Awaited> +>; +export type AgentMainBroadcastLeadMessageMutationBody = + GatewayLeadBroadcastRequest; +export type AgentMainBroadcastLeadMessageMutationError = LLMErrorResponse; + +/** + * @summary Broadcast a message to board leads via gateway-main + */ +export const useAgentMainBroadcastLeadMessage = < + TError = LLMErrorResponse, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { data: GatewayLeadBroadcastRequest }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { data: GatewayLeadBroadcastRequest }, + TContext +> => { + return useMutation( + getAgentMainBroadcastLeadMessageMutationOptions(options), + queryClient, + ); +}; diff --git a/frontend/src/api/generated/agents/agents.ts b/frontend/src/api/generated/agents/agents.ts index 81822c55..ede3ec2f 100644 --- a/frontend/src/api/generated/agents/agents.ts +++ b/frontend/src/api/generated/agents/agents.ts @@ -364,134 +364,6 @@ export const useCreateAgentApiV1AgentsPost = < queryClient, ); }; -/** - * Heartbeat an existing agent or create/provision one if needed. - * @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, - ); -}; /** * Stream agent updates as SSE events. * @summary Stream Agents @@ -704,123 +576,6 @@ export function useStreamAgentsApiV1AgentsStreamGet< return { ...query, queryKey: queryOptions.queryKey }; } -/** - * Delete an agent and clean related task state. - * @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, - ); -}; /** * Get a single agent by id. * @summary Get Agent @@ -1182,6 +937,123 @@ export const useUpdateAgentApiV1AgentsAgentIdPatch = < queryClient, ); }; +/** + * Delete an agent and clean related task state. + * @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, + ); +}; /** * Record a heartbeat for a specific agent. * @summary Heartbeat Agent @@ -1310,3 +1182,131 @@ export const useHeartbeatAgentApiV1AgentsAgentIdHeartbeatPost = < queryClient, ); }; +/** + * Heartbeat an existing agent or create/provision one if needed. + * @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/auth/auth.ts b/frontend/src/api/generated/auth/auth.ts index c9b5f50b..cd6e0ac8 100644 --- a/frontend/src/api/generated/auth/auth.ts +++ b/frontend/src/api/generated/auth/auth.ts @@ -12,27 +12,38 @@ import type { UseMutationResult, } from "@tanstack/react-query"; -import type { UserRead } from ".././model"; +import type { LLMErrorResponse, UserRead } from ".././model"; import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; /** - * Return the authenticated user profile from token claims. - * @summary Bootstrap User + * Resolve caller identity from auth headers and return the canonical user profile. This endpoint does not accept a request body. + * @summary Bootstrap Authenticated User Context */ export type bootstrapUserApiV1AuthBootstrapPostResponse200 = { data: UserRead; status: 200; }; +export type bootstrapUserApiV1AuthBootstrapPostResponse401 = { + data: LLMErrorResponse; + status: 401; +}; + export type bootstrapUserApiV1AuthBootstrapPostResponseSuccess = bootstrapUserApiV1AuthBootstrapPostResponse200 & { headers: Headers; }; +export type bootstrapUserApiV1AuthBootstrapPostResponseError = + bootstrapUserApiV1AuthBootstrapPostResponse401 & { + headers: Headers; + }; + export type bootstrapUserApiV1AuthBootstrapPostResponse = - bootstrapUserApiV1AuthBootstrapPostResponseSuccess; + | bootstrapUserApiV1AuthBootstrapPostResponseSuccess + | bootstrapUserApiV1AuthBootstrapPostResponseError; export const getBootstrapUserApiV1AuthBootstrapPostUrl = () => { return `/api/v1/auth/bootstrap`; @@ -51,7 +62,7 @@ export const bootstrapUserApiV1AuthBootstrapPost = async ( }; export const getBootstrapUserApiV1AuthBootstrapPostMutationOptions = < - TError = unknown, + TError = LLMErrorResponse, TContext = unknown, >(options?: { mutation?: UseMutationOptions< @@ -90,13 +101,13 @@ export type BootstrapUserApiV1AuthBootstrapPostMutationResult = NonNullable< Awaited> >; -export type BootstrapUserApiV1AuthBootstrapPostMutationError = unknown; +export type BootstrapUserApiV1AuthBootstrapPostMutationError = LLMErrorResponse; /** - * @summary Bootstrap User + * @summary Bootstrap Authenticated User Context */ export const useBootstrapUserApiV1AuthBootstrapPost = < - TError = unknown, + TError = LLMErrorResponse, TContext = unknown, >( options?: { diff --git a/frontend/src/api/generated/board-groups/board-groups.ts b/frontend/src/api/generated/board-groups/board-groups.ts index ceb6c86c..78fbaf2f 100644 --- a/frontend/src/api/generated/board-groups/board-groups.ts +++ b/frontend/src/api/generated/board-groups/board-groups.ts @@ -369,129 +369,6 @@ export const useCreateBoardGroupApiV1BoardGroupsPost = < queryClient, ); }; -/** - * Delete a board group. - * @summary Delete Board Group - */ -export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseSuccess = - deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseError = - deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse = - | deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseSuccess - | deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseError; - -export const getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteUrl = ( - groupId: string, -) => { - return `/api/v1/board-groups/${groupId}`; -}; - -export const deleteBoardGroupApiV1BoardGroupsGroupIdDelete = async ( - groupId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteUrl(groupId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { groupId: string }, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { groupId: string }, - TContext -> => { - const mutationKey = ["deleteBoardGroupApiV1BoardGroupsGroupIdDelete"]; - 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>, - { groupId: string } - > = (props) => { - const { groupId } = props ?? {}; - - return deleteBoardGroupApiV1BoardGroupsGroupIdDelete( - groupId, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationResult = - NonNullable< - Awaited> - >; - -export type DeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Board Group - */ -export const useDeleteBoardGroupApiV1BoardGroupsGroupIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { groupId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { groupId: string }, - TContext -> => { - return useMutation( - getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationOptions(options), - queryClient, - ); -}; /** * Get a board group by id. * @summary Get Board Group @@ -830,161 +707,125 @@ export const useUpdateBoardGroupApiV1BoardGroupsGroupIdPatch = < ); }; /** - * Apply heartbeat settings to agents in a board group. - * @summary Apply Board Group Heartbeat + * Delete a board group. + * @summary Delete Board Group */ -export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse200 = - { - data: BoardGroupHeartbeatApplyResult; - status: 200; - }; +export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse200 = { + data: OkResponse; + status: 200; +}; -export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse422 = - { - data: HTTPValidationError; - status: 422; - }; +export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse422 = { + data: HTTPValidationError; + status: 422; +}; -export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseSuccess = - applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse200 & { +export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseSuccess = + deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse200 & { headers: Headers; }; -export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseError = - applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse422 & { +export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseError = + deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse422 & { headers: Headers; }; -export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse = +export type deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponse = + | deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseSuccess + | deleteBoardGroupApiV1BoardGroupsGroupIdDeleteResponseError; - | applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseSuccess - | applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseError; +export const getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteUrl = ( + groupId: string, +) => { + return `/api/v1/board-groups/${groupId}`; +}; -export const getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostUrl = - (groupId: string) => { - return `/api/v1/board-groups/${groupId}/heartbeat`; - }; +export const deleteBoardGroupApiV1BoardGroupsGroupIdDelete = async ( + groupId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteUrl(groupId), + { + ...options, + method: "DELETE", + }, + ); +}; -export const applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost = - async ( - groupId: string, - boardGroupHeartbeatApply: BoardGroupHeartbeatApply, - options?: RequestInit, - ): Promise => { - return customFetch( - getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostUrl( - groupId, - ), - { - ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(boardGroupHeartbeatApply), - }, +export const getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { groupId: string }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { groupId: string }, + TContext +> => { + const mutationKey = ["deleteBoardGroupApiV1BoardGroupsGroupIdDelete"]; + 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>, + { groupId: string } + > = (props) => { + const { groupId } = props ?? {}; + + return deleteBoardGroupApiV1BoardGroupsGroupIdDelete( + groupId, + requestOptions, ); }; -export const getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost - > - >, - TError, - { groupId: string; data: BoardGroupHeartbeatApply }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType< - typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost - > - >, - TError, - { groupId: string; data: BoardGroupHeartbeatApply }, - TContext - > => { - const mutationKey = [ - "applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost", - ]; - 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 }; + return { mutationFn, ...mutationOptions }; +}; - const mutationFn: MutationFunction< - Awaited< - ReturnType< - typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost - > - >, - { groupId: string; data: BoardGroupHeartbeatApply } - > = (props) => { - const { groupId, data } = props ?? {}; - - return applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost( - groupId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type ApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationResult = +export type DeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationResult = NonNullable< - Awaited< - ReturnType< - typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost - > - > + Awaited> >; -export type ApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationBody = - BoardGroupHeartbeatApply; -export type ApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationError = + +export type DeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationError = HTTPValidationError; /** - * @summary Apply Board Group Heartbeat + * @summary Delete Board Group */ -export const useApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost = < +export const useDeleteBoardGroupApiV1BoardGroupsGroupIdDelete = < TError = HTTPValidationError, TContext = unknown, >( options?: { mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost - > - >, + Awaited>, TError, - { groupId: string; data: BoardGroupHeartbeatApply }, + { groupId: string }, TContext >; request?: SecondParameter; }, queryClient?: QueryClient, ): UseMutationResult< - Awaited< - ReturnType< - typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost - > - >, + Awaited>, TError, - { groupId: string; data: BoardGroupHeartbeatApply }, + { groupId: string }, TContext > => { return useMutation( - getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationOptions( - options, - ), + getDeleteBoardGroupApiV1BoardGroupsGroupIdDeleteMutationOptions(options), queryClient, ); }; @@ -1290,3 +1131,163 @@ export function useGetBoardGroupSnapshotApiV1BoardGroupsGroupIdSnapshotGet< return { ...query, queryKey: queryOptions.queryKey }; } + +/** + * Apply heartbeat settings to agents in a board group. + * @summary Apply Board Group Heartbeat + */ +export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse200 = + { + data: BoardGroupHeartbeatApplyResult; + status: 200; + }; + +export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseSuccess = + applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse200 & { + headers: Headers; + }; +export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseError = + applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse422 & { + headers: Headers; + }; + +export type applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponse = + + | applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseSuccess + | applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostResponseError; + +export const getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostUrl = + (groupId: string) => { + return `/api/v1/board-groups/${groupId}/heartbeat`; + }; + +export const applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost = + async ( + groupId: string, + boardGroupHeartbeatApply: BoardGroupHeartbeatApply, + options?: RequestInit, + ): Promise => { + return customFetch( + getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostUrl( + groupId, + ), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(boardGroupHeartbeatApply), + }, + ); + }; + +export const getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost + > + >, + TError, + { groupId: string; data: BoardGroupHeartbeatApply }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType< + typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost + > + >, + TError, + { groupId: string; data: BoardGroupHeartbeatApply }, + TContext + > => { + const mutationKey = [ + "applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost", + ]; + 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 applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost + > + >, + { groupId: string; data: BoardGroupHeartbeatApply } + > = (props) => { + const { groupId, data } = props ?? {}; + + return applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost( + groupId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type ApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationResult = + NonNullable< + Awaited< + ReturnType< + typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost + > + > + >; +export type ApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationBody = + BoardGroupHeartbeatApply; +export type ApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationError = + HTTPValidationError; + +/** + * @summary Apply Board Group Heartbeat + */ +export const useApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost + > + >, + TError, + { groupId: string; data: BoardGroupHeartbeatApply }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType< + typeof applyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPost + > + >, + TError, + { groupId: string; data: BoardGroupHeartbeatApply }, + TContext +> => { + return useMutation( + getApplyBoardGroupHeartbeatApiV1BoardGroupsGroupIdHeartbeatPostMutationOptions( + 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 479bfd9a..8efcb6ff 100644 --- a/frontend/src/api/generated/board-onboarding/board-onboarding.ts +++ b/frontend/src/api/generated/board-onboarding/board-onboarding.ts @@ -274,6 +274,298 @@ export function useGetOnboardingApiV1BoardsBoardIdOnboardingGet< return { ...query, queryKey: queryOptions.queryKey }; } +/** + * Start onboarding and send instructions to the gateway agent. + * @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, + ); +}; +/** + * Send a user onboarding answer to the gateway agent. + * @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, + ); +}; /** * Store onboarding updates submitted by the gateway agent. * @summary Agent Onboarding Update @@ -449,156 +741,6 @@ export const useAgentOnboardingUpdateApiV1BoardsBoardIdOnboardingAgentPost = < queryClient, ); }; -/** - * Send a user onboarding answer to the gateway agent. - * @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, - ); -}; /** * Confirm onboarding results and provision the board lead agent. * @summary Confirm Onboarding @@ -753,145 +895,3 @@ export const useConfirmOnboardingApiV1BoardsBoardIdOnboardingConfirmPost = < queryClient, ); }; -/** - * Start onboarding and send instructions to the gateway agent. - * @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/board-webhooks/board-webhooks.ts b/frontend/src/api/generated/board-webhooks/board-webhooks.ts index 3170f958..5cdeb22d 100644 --- a/frontend/src/api/generated/board-webhooks/board-webhooks.ts +++ b/frontend/src/api/generated/board-webhooks/board-webhooks.ts @@ -435,163 +435,6 @@ export const useCreateBoardWebhookApiV1BoardsBoardIdWebhooksPost = < queryClient, ); }; -/** - * Delete a webhook and its stored payload rows. - * @summary Delete Board Webhook - */ -export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse200 = - { - data: OkResponse; - status: 200; - }; - -export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseSuccess = - deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseError = - deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse = - - | deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseSuccess - | deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseError; - -export const getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteUrl = - (boardId: string, webhookId: string) => { - return `/api/v1/boards/${boardId}/webhooks/${webhookId}`; - }; - -export const deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete = - async ( - boardId: string, - webhookId: string, - options?: RequestInit, - ): Promise => { - return customFetch( - getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteUrl( - boardId, - webhookId, - ), - { - ...options, - method: "DELETE", - }, - ); - }; - -export const getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete - > - >, - TError, - { boardId: string; webhookId: string }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType< - typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete - > - >, - TError, - { boardId: string; webhookId: string }, - TContext - > => { - const mutationKey = [ - "deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete", - ]; - 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 deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete - > - >, - { boardId: string; webhookId: string } - > = (props) => { - const { boardId, webhookId } = props ?? {}; - - return deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete( - boardId, - webhookId, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type DeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationResult = - NonNullable< - Awaited< - ReturnType< - typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete - > - > - >; - -export type DeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Board Webhook - */ -export const useDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete - > - >, - TError, - { boardId: string; webhookId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType< - typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete - > - >, - TError, - { boardId: string; webhookId: string }, - TContext -> => { - return useMutation( - getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationOptions( - options, - ), - queryClient, - ); -}; /** * Get one board webhook configuration. * @summary Get Board Webhook @@ -1031,6 +874,163 @@ export const useUpdateBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdPatch = < queryClient, ); }; +/** + * Delete a webhook and its stored payload rows. + * @summary Delete Board Webhook + */ +export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse200 = + { + data: OkResponse; + status: 200; + }; + +export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseSuccess = + deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseError = + deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponse = + + | deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseSuccess + | deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteResponseError; + +export const getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteUrl = + (boardId: string, webhookId: string) => { + return `/api/v1/boards/${boardId}/webhooks/${webhookId}`; + }; + +export const deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete = + async ( + boardId: string, + webhookId: string, + options?: RequestInit, + ): Promise => { + return customFetch( + getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteUrl( + boardId, + webhookId, + ), + { + ...options, + method: "DELETE", + }, + ); + }; + +export const getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete + > + >, + TError, + { boardId: string; webhookId: string }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType< + typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete + > + >, + TError, + { boardId: string; webhookId: string }, + TContext + > => { + const mutationKey = [ + "deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete", + ]; + 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 deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete + > + >, + { boardId: string; webhookId: string } + > = (props) => { + const { boardId, webhookId } = props ?? {}; + + return deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete( + boardId, + webhookId, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type DeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationResult = + NonNullable< + Awaited< + ReturnType< + typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete + > + > + >; + +export type DeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Delete Board Webhook + */ +export const useDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete + > + >, + TError, + { boardId: string; webhookId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType< + typeof deleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDelete + > + >, + TError, + { boardId: string; webhookId: string }, + TContext +> => { + return useMutation( + getDeleteBoardWebhookApiV1BoardsBoardIdWebhooksWebhookIdDeleteMutationOptions( + options, + ), + queryClient, + ); +}; /** * Open inbound webhook endpoint that stores payloads and nudges the board lead. * @summary Ingest Board Webhook diff --git a/frontend/src/api/generated/boards/boards.ts b/frontend/src/api/generated/boards/boards.ts index 920d51d3..e5919845 100644 --- a/frontend/src/api/generated/boards/boards.ts +++ b/frontend/src/api/generated/boards/boards.ts @@ -363,123 +363,6 @@ export const useCreateBoardApiV1BoardsPost = < queryClient, ); }; -/** - * Delete a board and all dependent records. - * @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, - ); -}; /** * Get a board by id. * @summary Get Board @@ -800,6 +683,362 @@ export const useUpdateBoardApiV1BoardsBoardIdPatch = < queryClient, ); }; +/** + * Delete a board and all dependent records. + * @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, + ); +}; +/** + * Get a board snapshot view model. + * @summary Get Board Snapshot + */ +export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse200 = { + data: BoardSnapshot; + status: 200; +}; + +export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseSuccess = + getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse200 & { + headers: Headers; + }; +export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseError = + getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse422 & { + headers: Headers; + }; + +export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse = + | getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseSuccess + | getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseError; + +export const getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetUrl = ( + boardId: string, +) => { + return `/api/v1/boards/${boardId}/snapshot`; +}; + +export const getBoardSnapshotApiV1BoardsBoardIdSnapshotGet = async ( + boardId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetUrl(boardId), + { + ...options, + method: "GET", + }, + ); +}; + +export const getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryKey = ( + boardId: string, +) => { + return [`/api/v1/boards/${boardId}/snapshot`] as const; +}; + +export const getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryOptions = < + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, +) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryKey(boardId); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + getBoardSnapshotApiV1BoardsBoardIdSnapshotGet(boardId, { + signal, + ...requestOptions, + }); + + return { + queryKey, + queryFn, + enabled: !!boardId, + ...queryOptions, + } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type GetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryResult = + NonNullable< + Awaited> + >; +export type GetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryError = + HTTPValidationError; + +export function useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + 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 useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + 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 useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Get Board Snapshot + */ + +export function useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + boardId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryOptions( + boardId, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + /** * Get a grouped snapshot across related boards. @@ -1104,242 +1343,3 @@ export function useGetBoardGroupSnapshotApiV1BoardsBoardIdGroupSnapshotGet< return { ...query, queryKey: queryOptions.queryKey }; } - -/** - * Get a board snapshot view model. - * @summary Get Board Snapshot - */ -export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse200 = { - data: BoardSnapshot; - status: 200; -}; - -export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseSuccess = - getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse200 & { - headers: Headers; - }; -export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseError = - getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse422 & { - headers: Headers; - }; - -export type getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponse = - | getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseSuccess - | getBoardSnapshotApiV1BoardsBoardIdSnapshotGetResponseError; - -export const getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetUrl = ( - boardId: string, -) => { - return `/api/v1/boards/${boardId}/snapshot`; -}; - -export const getBoardSnapshotApiV1BoardsBoardIdSnapshotGet = async ( - boardId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetUrl(boardId), - { - ...options, - method: "GET", - }, - ); -}; - -export const getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryKey = ( - boardId: string, -) => { - return [`/api/v1/boards/${boardId}/snapshot`] as const; -}; - -export const getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryOptions = < - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, -) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryKey(boardId); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - getBoardSnapshotApiV1BoardsBoardIdSnapshotGet(boardId, { - signal, - ...requestOptions, - }); - - return { - queryKey, - queryFn, - enabled: !!boardId, - ...queryOptions, - } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type GetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryResult = - NonNullable< - Awaited> - >; -export type GetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryError = - HTTPValidationError; - -export function useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - 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 useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - 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 useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary Get Board Snapshot - */ - -export function useGetBoardSnapshotApiV1BoardsBoardIdSnapshotGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - boardId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getGetBoardSnapshotApiV1BoardsBoardIdSnapshotGetQueryOptions( - boardId, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} diff --git a/frontend/src/api/generated/custom-fields/custom-fields.ts b/frontend/src/api/generated/custom-fields/custom-fields.ts new file mode 100644 index 00000000..984078bb --- /dev/null +++ b/frontend/src/api/generated/custom-fields/custom-fields.ts @@ -0,0 +1,751 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ +import { useMutation, useQuery } from "@tanstack/react-query"; +import type { + DataTag, + DefinedInitialDataOptions, + DefinedUseQueryResult, + MutationFunction, + QueryClient, + QueryFunction, + QueryKey, + UndefinedInitialDataOptions, + UseMutationOptions, + UseMutationResult, + UseQueryOptions, + UseQueryResult, +} from "@tanstack/react-query"; + +import type { + HTTPValidationError, + OkResponse, + TaskCustomFieldDefinitionCreate, + TaskCustomFieldDefinitionRead, + TaskCustomFieldDefinitionUpdate, +} from ".././model"; + +import { customFetch } from "../../mutator"; + +type SecondParameter unknown> = Parameters[1]; + +/** + * List task custom field definitions for the authenticated organization. + * @summary List Org Custom Fields + */ +export type listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetResponse200 = + { + data: TaskCustomFieldDefinitionRead[]; + status: 200; + }; + +export type listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetResponseSuccess = + listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetResponse200 & { + headers: Headers; + }; +export type listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetResponse = + listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetResponseSuccess; + +export const getListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetUrl = + () => { + return `/api/v1/organizations/me/custom-fields`; + }; + +export const listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet = async ( + options?: RequestInit, +): Promise => { + return customFetch( + getListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetUrl(), + { + ...options, + method: "GET", + }, + ); +}; + +export const getListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetQueryKey = + () => { + return [`/api/v1/organizations/me/custom-fields`] as const; + }; + +export const getListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetQueryOptions = + < + TData = Awaited< + ReturnType + >, + TError = unknown, + >(options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + TData + > + >; + request?: SecondParameter; + }) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetQueryKey(); + + const queryFn: QueryFunction< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + > + > = ({ signal }) => + listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet({ + signal, + ...requestOptions, + }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + TData + > & { queryKey: DataTag }; + }; + +export type ListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetQueryResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type ListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetQueryError = + unknown; + +export function useListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options: { + query: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary List Org Custom Fields + */ + +export function useListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof listOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGet + > + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getListOrgCustomFieldsApiV1OrganizationsMeCustomFieldsGetQueryOptions( + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * Create an organization-level task custom field definition. + * @summary Create Org Custom Field + */ +export type createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponse200 = + { + data: TaskCustomFieldDefinitionRead; + status: 200; + }; + +export type createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponseSuccess = + createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponse200 & { + headers: Headers; + }; +export type createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponseError = + createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponse422 & { + headers: Headers; + }; + +export type createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponse = + | createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponseSuccess + | createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostResponseError; + +export const getCreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostUrl = + () => { + return `/api/v1/organizations/me/custom-fields`; + }; + +export const createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost = async ( + taskCustomFieldDefinitionCreate: TaskCustomFieldDefinitionCreate, + options?: RequestInit, +): Promise => { + return customFetch( + getCreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostUrl(), + { + ...options, + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(taskCustomFieldDefinitionCreate), + }, + ); +}; + +export const getCreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost + > + >, + TError, + { data: TaskCustomFieldDefinitionCreate }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType< + typeof createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost + > + >, + TError, + { data: TaskCustomFieldDefinitionCreate }, + TContext + > => { + const mutationKey = [ + "createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost", + ]; + 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 createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost + > + >, + { data: TaskCustomFieldDefinitionCreate } + > = (props) => { + const { data } = props ?? {}; + + return createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost( + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type CreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostMutationResult = + NonNullable< + Awaited< + ReturnType< + typeof createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost + > + > + >; +export type CreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostMutationBody = + TaskCustomFieldDefinitionCreate; +export type CreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostMutationError = + HTTPValidationError; + +/** + * @summary Create Org Custom Field + */ +export const useCreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof createOrgCustomFieldApiV1OrganizationsMeCustomFieldsPost + > + >, + TError, + { data: TaskCustomFieldDefinitionCreate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { data: TaskCustomFieldDefinitionCreate }, + TContext +> => { + return useMutation( + getCreateOrgCustomFieldApiV1OrganizationsMeCustomFieldsPostMutationOptions( + options, + ), + queryClient, + ); +}; +/** + * Update an organization-level task custom field definition. + * @summary Update Org Custom Field + */ +export type updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponse200 = + { + data: TaskCustomFieldDefinitionRead; + status: 200; + }; + +export type updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponseSuccess = + updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponse200 & { + headers: Headers; + }; +export type updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponseError = + updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponse422 & { + headers: Headers; + }; + +export type updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponse = + + | updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponseSuccess + | updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchResponseError; + +export const getUpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchUrl = + (taskCustomFieldDefinitionId: string) => { + return `/api/v1/organizations/me/custom-fields/${taskCustomFieldDefinitionId}`; + }; + +export const updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch = + async ( + taskCustomFieldDefinitionId: string, + taskCustomFieldDefinitionUpdate: TaskCustomFieldDefinitionUpdate, + options?: RequestInit, + ): Promise => { + return customFetch( + getUpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchUrl( + taskCustomFieldDefinitionId, + ), + { + ...options, + method: "PATCH", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(taskCustomFieldDefinitionUpdate), + }, + ); + }; + +export const getUpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch + > + >, + TError, + { + taskCustomFieldDefinitionId: string; + data: TaskCustomFieldDefinitionUpdate; + }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType< + typeof updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch + > + >, + TError, + { + taskCustomFieldDefinitionId: string; + data: TaskCustomFieldDefinitionUpdate; + }, + TContext + > => { + const mutationKey = [ + "updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch", + ]; + 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 updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch + > + >, + { + taskCustomFieldDefinitionId: string; + data: TaskCustomFieldDefinitionUpdate; + } + > = (props) => { + const { taskCustomFieldDefinitionId, data } = props ?? {}; + + return updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch( + taskCustomFieldDefinitionId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type UpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchMutationResult = + NonNullable< + Awaited< + ReturnType< + typeof updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch + > + > + >; +export type UpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchMutationBody = + TaskCustomFieldDefinitionUpdate; +export type UpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchMutationError = + HTTPValidationError; + +/** + * @summary Update Org Custom Field + */ +export const useUpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch = + ( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch + > + >, + TError, + { + taskCustomFieldDefinitionId: string; + data: TaskCustomFieldDefinitionUpdate; + }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, + ): UseMutationResult< + Awaited< + ReturnType< + typeof updateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatch + > + >, + TError, + { + taskCustomFieldDefinitionId: string; + data: TaskCustomFieldDefinitionUpdate; + }, + TContext + > => { + return useMutation( + getUpdateOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdPatchMutationOptions( + options, + ), + queryClient, + ); + }; +/** + * Delete an org-level definition when it has no persisted task values. + * @summary Delete Org Custom Field + */ +export type deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponse200 = + { + data: OkResponse; + status: 200; + }; + +export type deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponseSuccess = + deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponseError = + deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponse = + + | deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponseSuccess + | deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteResponseError; + +export const getDeleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteUrl = + (taskCustomFieldDefinitionId: string) => { + return `/api/v1/organizations/me/custom-fields/${taskCustomFieldDefinitionId}`; + }; + +export const deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete = + async ( + taskCustomFieldDefinitionId: string, + options?: RequestInit, + ): Promise => { + return customFetch( + getDeleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteUrl( + taskCustomFieldDefinitionId, + ), + { + ...options, + method: "DELETE", + }, + ); + }; + +export const getDeleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete + > + >, + TError, + { taskCustomFieldDefinitionId: string }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType< + typeof deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete + > + >, + TError, + { taskCustomFieldDefinitionId: string }, + TContext + > => { + const mutationKey = [ + "deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete", + ]; + 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 deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete + > + >, + { taskCustomFieldDefinitionId: string } + > = (props) => { + const { taskCustomFieldDefinitionId } = props ?? {}; + + return deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete( + taskCustomFieldDefinitionId, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type DeleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteMutationResult = + NonNullable< + Awaited< + ReturnType< + typeof deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete + > + > + >; + +export type DeleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Delete Org Custom Field + */ +export const useDeleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete = + ( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete + > + >, + TError, + { taskCustomFieldDefinitionId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, + ): UseMutationResult< + Awaited< + ReturnType< + typeof deleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDelete + > + >, + TError, + { taskCustomFieldDefinitionId: string }, + TContext + > => { + return useMutation( + getDeleteOrgCustomFieldApiV1OrganizationsMeCustomFieldsTaskCustomFieldDefinitionIdDeleteMutationOptions( + options, + ), + queryClient, + ); + }; diff --git a/frontend/src/api/generated/gateways/gateways.ts b/frontend/src/api/generated/gateways/gateways.ts index 63e1f9b1..a19963bc 100644 --- a/frontend/src/api/generated/gateways/gateways.ts +++ b/frontend/src/api/generated/gateways/gateways.ts @@ -48,34 +48,34 @@ import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; /** - * List gateways for the caller's organization. - * @summary List Gateways + * Return gateway connectivity and session status. + * @summary Gateways Status */ -export type listGatewaysApiV1GatewaysGetResponse200 = { - data: LimitOffsetPageTypeVarCustomizedGatewayRead; +export type gatewaysStatusApiV1GatewaysStatusGetResponse200 = { + data: GatewaysStatusResponse; 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(); @@ -88,16 +88,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", @@ -105,21 +105,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 > @@ -129,342 +129,46 @@ export const getListGatewaysApiV1GatewaysGetQueryOptions = < ) => { const { query: queryOptions, request: requestOptions } = options ?? {}; - const queryKey = - queryOptions?.queryKey ?? getListGatewaysApiV1GatewaysGetQueryKey(params); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - listGatewaysApiV1GatewaysGet(params, { signal, ...requestOptions }); - - return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type ListGatewaysApiV1GatewaysGetQueryResult = NonNullable< - Awaited> ->; -export type ListGatewaysApiV1GatewaysGetQueryError = HTTPValidationError; - -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, - TError = HTTPValidationError, ->( - params: undefined | ListGatewaysApiV1GatewaysGetParams, - options: { - query: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - > & - Pick< - DefinedInitialDataOptions< - Awaited>, - TError, - Awaited> - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): DefinedUseQueryResult & { - queryKey: DataTag; -}; -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, - TError = HTTPValidationError, ->( - params?: ListGatewaysApiV1GatewaysGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - > & - Pick< - UndefinedInitialDataOptions< - Awaited>, - TError, - Awaited> - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, - TError = HTTPValidationError, ->( - params?: ListGatewaysApiV1GatewaysGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary List Gateways - */ - -export function useListGatewaysApiV1GatewaysGet< - TData = Awaited>, - TError = HTTPValidationError, ->( - params?: ListGatewaysApiV1GatewaysGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = getListGatewaysApiV1GatewaysGetQueryOptions( - params, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * Create a gateway and provision or refresh its main agent. - * @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, - ); -}; -/** - * Return supported gateway protocol methods and events. - * @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(); + getGatewaysStatusApiV1GatewaysStatusGetQueryKey(params); const queryFn: QueryFunction< - Awaited> + Awaited> > = ({ signal }) => - gatewayCommandsApiV1GatewaysCommandsGet({ signal, ...requestOptions }); + gatewaysStatusApiV1GatewaysStatusGet(params, { signal, ...requestOptions }); return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, + Awaited>, TError, TData > & { queryKey: DataTag }; }; -export type GatewayCommandsApiV1GatewaysCommandsGetQueryResult = NonNullable< - Awaited> +export type GatewaysStatusApiV1GatewaysStatusGetQueryResult = NonNullable< + Awaited> >; -export type GatewayCommandsApiV1GatewaysCommandsGetQueryError = unknown; +export type GatewaysStatusApiV1GatewaysStatusGetQueryError = + HTTPValidationError; -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, + TError = HTTPValidationError, >( + params: undefined | GatewaysStatusApiV1GatewaysStatusGetParams, options: { query: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< DefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -474,23 +178,24 @@ export function useGatewayCommandsApiV1GatewaysCommandsGet< ): DefinedUseQueryResult & { queryKey: DataTag; }; -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, + TError = HTTPValidationError, >( + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > > & Pick< UndefinedInitialDataOptions< - Awaited>, + Awaited>, TError, - Awaited> + Awaited> >, "initialData" >; @@ -500,14 +205,15 @@ export function useGatewayCommandsApiV1GatewaysCommandsGet< ): UseQueryResult & { queryKey: DataTag; }; -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, + TError = HTTPValidationError, >( + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -519,17 +225,18 @@ export function useGatewayCommandsApiV1GatewaysCommandsGet< queryKey: DataTag; }; /** - * @summary Gateway Commands + * @summary Gateways Status */ -export function useGatewayCommandsApiV1GatewaysCommandsGet< - TData = Awaited>, - TError = unknown, +export function useGatewaysStatusApiV1GatewaysStatusGet< + TData = Awaited>, + TError = HTTPValidationError, >( + params?: GatewaysStatusApiV1GatewaysStatusGetParams, options?: { query?: Partial< UseQueryOptions< - Awaited>, + Awaited>, TError, TData > @@ -540,8 +247,10 @@ export function useGatewayCommandsApiV1GatewaysCommandsGet< ): UseQueryResult & { queryKey: DataTag; } { - const queryOptions = - getGatewayCommandsApiV1GatewaysCommandsGetQueryOptions(options); + const queryOptions = getGatewaysStatusApiV1GatewaysStatusGetQueryOptions( + params, + options, + ); const query = useQuery(queryOptions, queryClient) as UseQueryResult< TData, @@ -1574,34 +1283,209 @@ export const useSendGatewaySessionMessageApiV1GatewaysSessionsSessionIdMessagePo ); }; /** - * Return gateway connectivity and session status. - * @summary Gateways Status + * Return supported gateway protocol methods and events. + * @summary Gateway Commands */ -export type gatewaysStatusApiV1GatewaysStatusGetResponse200 = { - data: GatewaysStatusResponse; +export type gatewayCommandsApiV1GatewaysCommandsGetResponse200 = { + data: GatewayCommandsResponse; status: 200; }; -export type gatewaysStatusApiV1GatewaysStatusGetResponse422 = { +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 }; +} + +/** + * List gateways for the caller's organization. + * @summary List Gateways + */ +export type listGatewaysApiV1GatewaysGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedGatewayRead; + status: 200; +}; + +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(); @@ -1614,16 +1498,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", @@ -1631,21 +1515,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 > @@ -1656,45 +1540,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" >; @@ -1704,24 +1586,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" >; @@ -1731,15 +1613,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 > @@ -1751,18 +1633,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 > @@ -1773,7 +1655,7 @@ export function useGatewaysStatusApiV1GatewaysStatusGet< ): UseQueryResult & { queryKey: DataTag; } { - const queryOptions = getGatewaysStatusApiV1GatewaysStatusGetQueryOptions( + const queryOptions = getListGatewaysApiV1GatewaysGetQueryOptions( params, options, ); @@ -1787,69 +1669,69 @@ export function useGatewaysStatusApiV1GatewaysStatusGet< } /** - * Delete a gateway in the caller's organization. - * @summary Delete Gateway + * Create a gateway and provision or refresh its main agent. + * @summary Create Gateway */ -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse200 = { - data: OkResponse; +export type createGatewayApiV1GatewaysPostResponse200 = { + data: GatewayRead; status: 200; }; -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse422 = { +export type createGatewayApiV1GatewaysPostResponse422 = { data: HTTPValidationError; status: 422; }; -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponseSuccess = - deleteGatewayApiV1GatewaysGatewayIdDeleteResponse200 & { +export type createGatewayApiV1GatewaysPostResponseSuccess = + createGatewayApiV1GatewaysPostResponse200 & { headers: Headers; }; -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponseError = - deleteGatewayApiV1GatewaysGatewayIdDeleteResponse422 & { +export type createGatewayApiV1GatewaysPostResponseError = + createGatewayApiV1GatewaysPostResponse422 & { headers: Headers; }; -export type deleteGatewayApiV1GatewaysGatewayIdDeleteResponse = - | deleteGatewayApiV1GatewaysGatewayIdDeleteResponseSuccess - | deleteGatewayApiV1GatewaysGatewayIdDeleteResponseError; +export type createGatewayApiV1GatewaysPostResponse = + | createGatewayApiV1GatewaysPostResponseSuccess + | createGatewayApiV1GatewaysPostResponseError; -export const getDeleteGatewayApiV1GatewaysGatewayIdDeleteUrl = ( - gatewayId: string, -) => { - return `/api/v1/gateways/${gatewayId}`; +export const getCreateGatewayApiV1GatewaysPostUrl = () => { + return `/api/v1/gateways`; }; -export const deleteGatewayApiV1GatewaysGatewayIdDelete = async ( - gatewayId: string, +export const createGatewayApiV1GatewaysPost = async ( + gatewayCreate: GatewayCreate, options?: RequestInit, -): Promise => { - return customFetch( - getDeleteGatewayApiV1GatewaysGatewayIdDeleteUrl(gatewayId), +): Promise => { + return customFetch( + getCreateGatewayApiV1GatewaysPostUrl(), { ...options, - method: "DELETE", + method: "POST", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(gatewayCreate), }, ); }; -export const getDeleteGatewayApiV1GatewaysGatewayIdDeleteMutationOptions = < +export const getCreateGatewayApiV1GatewaysPostMutationOptions = < TError = HTTPValidationError, TContext = unknown, >(options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - { gatewayId: string }, + { data: GatewayCreate }, TContext >; request?: SecondParameter; }): UseMutationOptions< - Awaited>, + Awaited>, TError, - { gatewayId: string }, + { data: GatewayCreate }, TContext > => { - const mutationKey = ["deleteGatewayApiV1GatewaysGatewayIdDelete"]; + const mutationKey = ["createGatewayApiV1GatewaysPost"]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && "mutationKey" in options.mutation && @@ -1859,50 +1741,48 @@ export const getDeleteGatewayApiV1GatewaysGatewayIdDeleteMutationOptions = < : { mutation: { mutationKey }, request: undefined }; const mutationFn: MutationFunction< - Awaited>, - { gatewayId: string } + Awaited>, + { data: GatewayCreate } > = (props) => { - const { gatewayId } = props ?? {}; + const { data } = props ?? {}; - return deleteGatewayApiV1GatewaysGatewayIdDelete(gatewayId, requestOptions); + return createGatewayApiV1GatewaysPost(data, requestOptions); }; return { mutationFn, ...mutationOptions }; }; -export type DeleteGatewayApiV1GatewaysGatewayIdDeleteMutationResult = - NonNullable< - Awaited> - >; - -export type DeleteGatewayApiV1GatewaysGatewayIdDeleteMutationError = - HTTPValidationError; +export type CreateGatewayApiV1GatewaysPostMutationResult = NonNullable< + Awaited> +>; +export type CreateGatewayApiV1GatewaysPostMutationBody = GatewayCreate; +export type CreateGatewayApiV1GatewaysPostMutationError = HTTPValidationError; /** - * @summary Delete Gateway + * @summary Create Gateway */ -export const useDeleteGatewayApiV1GatewaysGatewayIdDelete = < +export const useCreateGatewayApiV1GatewaysPost = < TError = HTTPValidationError, TContext = unknown, >( options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - { gatewayId: string }, + { data: GatewayCreate }, TContext >; request?: SecondParameter; }, queryClient?: QueryClient, ): UseMutationResult< - Awaited>, + Awaited>, TError, - { gatewayId: string }, + { data: GatewayCreate }, TContext > => { return useMutation( - getDeleteGatewayApiV1GatewaysGatewayIdDeleteMutationOptions(options), + getCreateGatewayApiV1GatewaysPostMutationOptions(options), queryClient, ); }; @@ -2242,6 +2122,126 @@ export const useUpdateGatewayApiV1GatewaysGatewayIdPatch = < queryClient, ); }; +/** + * Delete a gateway in the caller's organization. + * @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, + ); +}; /** * Sync templates for a gateway and optionally rotate runtime settings. * @summary Sync Gateway Templates diff --git a/frontend/src/api/generated/health/health.ts b/frontend/src/api/generated/health/health.ts new file mode 100644 index 00000000..cc56591f --- /dev/null +++ b/frontend/src/api/generated/health/health.ts @@ -0,0 +1,514 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ +import { useQuery } from "@tanstack/react-query"; +import type { + DataTag, + DefinedInitialDataOptions, + DefinedUseQueryResult, + QueryClient, + QueryFunction, + QueryKey, + UndefinedInitialDataOptions, + UseQueryOptions, + UseQueryResult, +} from "@tanstack/react-query"; + +import type { HealthStatusResponse } from ".././model"; + +import { customFetch } from "../../mutator"; + +type SecondParameter unknown> = Parameters[1]; + +/** + * Lightweight liveness probe endpoint. + * @summary Health Check + */ +export type healthHealthGetResponse200 = { + data: HealthStatusResponse; + status: 200; +}; + +export type healthHealthGetResponseSuccess = healthHealthGetResponse200 & { + headers: Headers; +}; +export type healthHealthGetResponse = healthHealthGetResponseSuccess; + +export const getHealthHealthGetUrl = () => { + return `/health`; +}; + +export const healthHealthGet = async ( + options?: RequestInit, +): Promise => { + return customFetch(getHealthHealthGetUrl(), { + ...options, + method: "GET", + }); +}; + +export const getHealthHealthGetQueryKey = () => { + return [`/health`] as const; +}; + +export const getHealthHealthGetQueryOptions = < + TData = Awaited>, + TError = unknown, +>(options?: { + query?: Partial< + UseQueryOptions>, TError, TData> + >; + request?: SecondParameter; +}) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getHealthHealthGetQueryKey(); + + const queryFn: QueryFunction>> = ({ + signal, + }) => healthHealthGet({ signal, ...requestOptions }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type HealthHealthGetQueryResult = NonNullable< + Awaited> +>; +export type HealthHealthGetQueryError = unknown; + +export function useHealthHealthGet< + 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 useHealthHealthGet< + 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 useHealthHealthGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Health Check + */ + +export function useHealthHealthGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = getHealthHealthGetQueryOptions(options); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * Alias liveness probe endpoint for platform compatibility. + * @summary Health Alias Check + */ +export type healthzHealthzGetResponse200 = { + data: HealthStatusResponse; + status: 200; +}; + +export type healthzHealthzGetResponseSuccess = healthzHealthzGetResponse200 & { + headers: Headers; +}; +export type healthzHealthzGetResponse = healthzHealthzGetResponseSuccess; + +export const getHealthzHealthzGetUrl = () => { + return `/healthz`; +}; + +export const healthzHealthzGet = async ( + options?: RequestInit, +): Promise => { + return customFetch(getHealthzHealthzGetUrl(), { + ...options, + method: "GET", + }); +}; + +export const getHealthzHealthzGetQueryKey = () => { + return [`/healthz`] as const; +}; + +export const getHealthzHealthzGetQueryOptions = < + TData = Awaited>, + TError = unknown, +>(options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; +}) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getHealthzHealthzGetQueryKey(); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => healthzHealthzGet({ signal, ...requestOptions }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type HealthzHealthzGetQueryResult = NonNullable< + Awaited> +>; +export type HealthzHealthzGetQueryError = unknown; + +export function useHealthzHealthzGet< + 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 useHealthzHealthzGet< + 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 useHealthzHealthzGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Health Alias Check + */ + +export function useHealthzHealthzGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = getHealthzHealthzGetQueryOptions(options); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * Readiness probe endpoint for service orchestration checks. + * @summary Readiness Check + */ +export type readyzReadyzGetResponse200 = { + data: HealthStatusResponse; + status: 200; +}; + +export type readyzReadyzGetResponseSuccess = readyzReadyzGetResponse200 & { + headers: Headers; +}; +export type readyzReadyzGetResponse = readyzReadyzGetResponseSuccess; + +export const getReadyzReadyzGetUrl = () => { + return `/readyz`; +}; + +export const readyzReadyzGet = async ( + options?: RequestInit, +): Promise => { + return customFetch(getReadyzReadyzGetUrl(), { + ...options, + method: "GET", + }); +}; + +export const getReadyzReadyzGetQueryKey = () => { + return [`/readyz`] as const; +}; + +export const getReadyzReadyzGetQueryOptions = < + TData = Awaited>, + TError = unknown, +>(options?: { + query?: Partial< + UseQueryOptions>, TError, TData> + >; + request?: SecondParameter; +}) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = queryOptions?.queryKey ?? getReadyzReadyzGetQueryKey(); + + const queryFn: QueryFunction>> = ({ + signal, + }) => readyzReadyzGet({ signal, ...requestOptions }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type ReadyzReadyzGetQueryResult = NonNullable< + Awaited> +>; +export type ReadyzReadyzGetQueryError = unknown; + +export function useReadyzReadyzGet< + 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 useReadyzReadyzGet< + 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 useReadyzReadyzGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Readiness Check + */ + +export function useReadyzReadyzGet< + TData = Awaited>, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = getReadyzReadyzGetQueryOptions(options); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} diff --git a/frontend/src/api/generated/model/activityEventRead.ts b/frontend/src/api/generated/model/activityEventRead.ts index 19130403..ca2b7c29 100644 --- a/frontend/src/api/generated/model/activityEventRead.ts +++ b/frontend/src/api/generated/model/activityEventRead.ts @@ -9,10 +9,10 @@ * Serialized activity event payload returned by activity endpoints. */ export interface ActivityEventRead { - agent_id: string | null; - created_at: string; - event_type: string; id: string; + event_type: string; message: string | null; + agent_id: string | null; task_id: string | null; + created_at: string; } diff --git a/frontend/src/api/generated/model/activityTaskCommentFeedItemRead.ts b/frontend/src/api/generated/model/activityTaskCommentFeedItemRead.ts index df534a51..9f46a58b 100644 --- a/frontend/src/api/generated/model/activityTaskCommentFeedItemRead.ts +++ b/frontend/src/api/generated/model/activityTaskCommentFeedItemRead.ts @@ -9,14 +9,14 @@ * Denormalized task-comment feed item enriched with task and board fields. */ export interface ActivityTaskCommentFeedItemRead { + id: string; + created_at: string; + message: string | null; agent_id: string | null; agent_name?: string | null; agent_role?: string | null; - board_id: string; - board_name: string; - created_at: string; - id: string; - message: string | null; task_id: string; task_title: string; + board_id: string; + board_name: string; } diff --git a/frontend/src/api/generated/model/agentCreate.ts b/frontend/src/api/generated/model/agentCreate.ts index e40ddd3c..3f30056f 100644 --- a/frontend/src/api/generated/model/agentCreate.ts +++ b/frontend/src/api/generated/model/agentCreate.ts @@ -11,12 +11,21 @@ import type { AgentCreateIdentityProfile } from "./agentCreateIdentityProfile"; * Payload for creating a new agent. */ export interface AgentCreate { + /** Board id that scopes this agent. Omit only when policy allows global agents. */ board_id?: string | null; - heartbeat_config?: AgentCreateHeartbeatConfig; - identity_profile?: AgentCreateIdentityProfile; - identity_template?: string | null; - /** @minLength 1 */ + /** + * Human-readable agent display name. + * @minLength 1 + */ name: string; - soul_template?: string | null; + /** Current lifecycle state used by coordinator logic. */ status?: string; + /** Runtime heartbeat behavior overrides for this agent. */ + heartbeat_config?: AgentCreateHeartbeatConfig; + /** Optional profile hints used by routing and policy checks. */ + identity_profile?: AgentCreateIdentityProfile; + /** Template that helps define initial intent and behavior. */ + identity_template?: string | null; + /** Template representing deeper agent instructions. */ + soul_template?: string | null; } diff --git a/frontend/src/api/generated/model/agentCreateHeartbeatConfig.ts b/frontend/src/api/generated/model/agentCreateHeartbeatConfig.ts index 39b48b6c..948daca1 100644 --- a/frontend/src/api/generated/model/agentCreateHeartbeatConfig.ts +++ b/frontend/src/api/generated/model/agentCreateHeartbeatConfig.ts @@ -5,4 +5,7 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Runtime heartbeat behavior overrides for this agent. + */ export type AgentCreateHeartbeatConfig = { [key: string]: unknown } | null; diff --git a/frontend/src/api/generated/model/agentCreateIdentityProfile.ts b/frontend/src/api/generated/model/agentCreateIdentityProfile.ts index 1971578c..322463da 100644 --- a/frontend/src/api/generated/model/agentCreateIdentityProfile.ts +++ b/frontend/src/api/generated/model/agentCreateIdentityProfile.ts @@ -5,4 +5,7 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Optional profile hints used by routing and policy checks. + */ export type AgentCreateIdentityProfile = { [key: string]: unknown } | null; diff --git a/frontend/src/api/generated/model/agentHeartbeat.ts b/frontend/src/api/generated/model/agentHeartbeat.ts index 65b38549..de63cc72 100644 --- a/frontend/src/api/generated/model/agentHeartbeat.ts +++ b/frontend/src/api/generated/model/agentHeartbeat.ts @@ -9,5 +9,6 @@ * Heartbeat status payload sent by agents. */ export interface AgentHeartbeat { + /** Agent health status string. */ status?: string | null; } diff --git a/frontend/src/api/generated/model/agentHeartbeatCreate.ts b/frontend/src/api/generated/model/agentHeartbeatCreate.ts index c4b09c8b..9620c266 100644 --- a/frontend/src/api/generated/model/agentHeartbeatCreate.ts +++ b/frontend/src/api/generated/model/agentHeartbeatCreate.ts @@ -9,8 +9,13 @@ * Heartbeat payload used to create an agent lazily. */ export interface AgentHeartbeatCreate { - board_id?: string | null; - /** @minLength 1 */ - name: string; + /** Agent health status string. */ status?: string | null; + /** + * Display name assigned during first heartbeat bootstrap. + * @minLength 1 + */ + name: string; + /** Optional board context for bootstrap. */ + board_id?: string | null; } diff --git a/frontend/src/api/generated/model/agentNudge.ts b/frontend/src/api/generated/model/agentNudge.ts index 801ecb99..8b295b36 100644 --- a/frontend/src/api/generated/model/agentNudge.ts +++ b/frontend/src/api/generated/model/agentNudge.ts @@ -9,6 +9,9 @@ * Nudge message payload for pinging an agent. */ export interface AgentNudge { - /** @minLength 1 */ + /** + * Short message to direct an agent toward immediate attention. + * @minLength 1 + */ message: string; } diff --git a/frontend/src/api/generated/model/agentRead.ts b/frontend/src/api/generated/model/agentRead.ts index 90c34e14..4b9fa5fe 100644 --- a/frontend/src/api/generated/model/agentRead.ts +++ b/frontend/src/api/generated/model/agentRead.ts @@ -11,20 +11,37 @@ import type { AgentReadIdentityProfile } from "./agentReadIdentityProfile"; * Public agent representation returned by the API. */ export interface AgentRead { + /** Board id that scopes this agent. Omit only when policy allows global agents. */ board_id?: string | null; - created_at: string; - gateway_id: string; - heartbeat_config?: AgentReadHeartbeatConfig; - id: string; - identity_profile?: AgentReadIdentityProfile; - identity_template?: string | null; - is_board_lead?: boolean; - is_gateway_main?: boolean; - last_seen_at: string | null; - /** @minLength 1 */ + /** + * Human-readable agent display name. + * @minLength 1 + */ name: string; - openclaw_session_id?: string | null; - soul_template?: string | null; + /** Current lifecycle state used by coordinator logic. */ status?: string; + /** Runtime heartbeat behavior overrides for this agent. */ + heartbeat_config?: AgentReadHeartbeatConfig; + /** Optional profile hints used by routing and policy checks. */ + identity_profile?: AgentReadIdentityProfile; + /** Template that helps define initial intent and behavior. */ + identity_template?: string | null; + /** Template representing deeper agent instructions. */ + soul_template?: string | null; + /** Agent UUID. */ + id: string; + /** Gateway UUID that manages this agent. */ + gateway_id: string; + /** Whether this agent is the board lead. */ + is_board_lead?: boolean; + /** Whether this agent is the primary gateway agent. */ + is_gateway_main?: boolean; + /** Optional openclaw session token. */ + openclaw_session_id?: string | null; + /** Last heartbeat timestamp. */ + last_seen_at?: string | null; + /** Creation timestamp. */ + created_at: string; + /** Last update timestamp. */ updated_at: string; } diff --git a/frontend/src/api/generated/model/agentReadHeartbeatConfig.ts b/frontend/src/api/generated/model/agentReadHeartbeatConfig.ts index 289b3f4f..069b9fdd 100644 --- a/frontend/src/api/generated/model/agentReadHeartbeatConfig.ts +++ b/frontend/src/api/generated/model/agentReadHeartbeatConfig.ts @@ -5,4 +5,7 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Runtime heartbeat behavior overrides for this agent. + */ export type AgentReadHeartbeatConfig = { [key: string]: unknown } | null; diff --git a/frontend/src/api/generated/model/agentReadIdentityProfile.ts b/frontend/src/api/generated/model/agentReadIdentityProfile.ts index 013894cc..44e59354 100644 --- a/frontend/src/api/generated/model/agentReadIdentityProfile.ts +++ b/frontend/src/api/generated/model/agentReadIdentityProfile.ts @@ -5,4 +5,7 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Optional profile hints used by routing and policy checks. + */ export type AgentReadIdentityProfile = { [key: string]: unknown } | null; diff --git a/frontend/src/api/generated/model/agentUpdate.ts b/frontend/src/api/generated/model/agentUpdate.ts index 2915b9d7..56b04682 100644 --- a/frontend/src/api/generated/model/agentUpdate.ts +++ b/frontend/src/api/generated/model/agentUpdate.ts @@ -11,12 +11,20 @@ import type { AgentUpdateIdentityProfile } from "./agentUpdateIdentityProfile"; * Payload for patching an existing agent. */ export interface AgentUpdate { + /** Optional new board assignment. */ board_id?: string | null; - heartbeat_config?: AgentUpdateHeartbeatConfig; - identity_profile?: AgentUpdateIdentityProfile; - identity_template?: string | null; + /** Whether this agent is treated as the board gateway main. */ is_gateway_main?: boolean | null; + /** Optional replacement display name. */ name?: string | null; - soul_template?: string | null; + /** Optional replacement lifecycle status. */ status?: string | null; + /** Optional heartbeat policy override. */ + heartbeat_config?: AgentUpdateHeartbeatConfig; + /** Optional identity profile update values. */ + identity_profile?: AgentUpdateIdentityProfile; + /** Optional replacement identity template. */ + identity_template?: string | null; + /** Optional replacement soul template. */ + soul_template?: string | null; } diff --git a/frontend/src/api/generated/model/agentUpdateHeartbeatConfig.ts b/frontend/src/api/generated/model/agentUpdateHeartbeatConfig.ts index ce7c5810..05c6888f 100644 --- a/frontend/src/api/generated/model/agentUpdateHeartbeatConfig.ts +++ b/frontend/src/api/generated/model/agentUpdateHeartbeatConfig.ts @@ -5,4 +5,7 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Optional heartbeat policy override. + */ export type AgentUpdateHeartbeatConfig = { [key: string]: unknown } | null; diff --git a/frontend/src/api/generated/model/agentUpdateIdentityProfile.ts b/frontend/src/api/generated/model/agentUpdateIdentityProfile.ts index e7b1934f..b79273ad 100644 --- a/frontend/src/api/generated/model/agentUpdateIdentityProfile.ts +++ b/frontend/src/api/generated/model/agentUpdateIdentityProfile.ts @@ -5,4 +5,7 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Optional identity profile update values. + */ export type AgentUpdateIdentityProfile = { [key: string]: unknown } | null; diff --git a/frontend/src/api/generated/model/approvalCreate.ts b/frontend/src/api/generated/model/approvalCreate.ts index 320c7a0a..ad2159ff 100644 --- a/frontend/src/api/generated/model/approvalCreate.ts +++ b/frontend/src/api/generated/model/approvalCreate.ts @@ -13,16 +13,16 @@ import type { ApprovalCreateStatus } from "./approvalCreateStatus"; */ export interface ApprovalCreate { action_type: string; - agent_id?: string | null; + task_id?: string | null; + task_ids?: string[]; + payload?: ApprovalCreatePayload; /** * @minimum 0 * @maximum 100 */ confidence: number; - lead_reasoning?: string | null; - payload?: ApprovalCreatePayload; rubric_scores?: ApprovalCreateRubricScores; status?: ApprovalCreateStatus; - task_id?: string | null; - task_ids?: string[]; + agent_id?: string | null; + lead_reasoning?: string | null; } diff --git a/frontend/src/api/generated/model/approvalRead.ts b/frontend/src/api/generated/model/approvalRead.ts index 97158858..48a9c348 100644 --- a/frontend/src/api/generated/model/approvalRead.ts +++ b/frontend/src/api/generated/model/approvalRead.ts @@ -13,20 +13,20 @@ import type { ApprovalReadStatus } from "./approvalReadStatus"; */ export interface ApprovalRead { action_type: string; - agent_id?: string | null; - board_id: string; + task_id?: string | null; + task_ids?: string[]; + payload?: ApprovalReadPayload; /** * @minimum 0 * @maximum 100 */ confidence: number; - created_at: string; - id: string; - payload?: ApprovalReadPayload; - resolved_at?: string | null; rubric_scores?: ApprovalReadRubricScores; status?: ApprovalReadStatus; - task_id?: string | null; - task_ids?: string[]; + id: string; + board_id: string; task_titles?: string[]; + agent_id?: string | null; + created_at: string; + resolved_at?: string | null; } diff --git a/frontend/src/api/generated/model/blockedTaskDetail.ts b/frontend/src/api/generated/model/blockedTaskDetail.ts index d9e71124..beac973b 100644 --- a/frontend/src/api/generated/model/blockedTaskDetail.ts +++ b/frontend/src/api/generated/model/blockedTaskDetail.ts @@ -9,6 +9,6 @@ * Error detail payload listing blocking dependency task identifiers. */ export interface BlockedTaskDetail { - blocked_by_task_ids?: string[]; message: string; + blocked_by_task_ids?: string[]; } diff --git a/frontend/src/api/generated/model/boardCreate.ts b/frontend/src/api/generated/model/boardCreate.ts index 4aaf95ba..44163dac 100644 --- a/frontend/src/api/generated/model/boardCreate.ts +++ b/frontend/src/api/generated/model/boardCreate.ts @@ -10,21 +10,21 @@ import type { BoardCreateSuccessMetrics } from "./boardCreateSuccessMetrics"; * Payload for creating a board. */ export interface BoardCreate { - block_status_changes_with_pending_approval?: boolean; - board_group_id?: string | null; - board_type?: string; + name: string; + slug: string; description: string; gateway_id?: string | null; - goal_confirmed?: boolean; - goal_source?: string | null; - /** @minimum 0 */ - max_agents?: number; - name: string; + board_group_id?: string | null; + board_type?: string; objective?: string | null; - only_lead_can_change_status?: boolean; - require_approval_for_done?: boolean; - require_review_before_done?: boolean; - slug: string; success_metrics?: BoardCreateSuccessMetrics; target_date?: string | null; + goal_confirmed?: boolean; + goal_source?: string | null; + require_approval_for_done?: boolean; + require_review_before_done?: boolean; + block_status_changes_with_pending_approval?: boolean; + only_lead_can_change_status?: boolean; + /** @minimum 0 */ + max_agents?: number; } diff --git a/frontend/src/api/generated/model/boardGroupCreate.ts b/frontend/src/api/generated/model/boardGroupCreate.ts index bd7da983..96ac5a33 100644 --- a/frontend/src/api/generated/model/boardGroupCreate.ts +++ b/frontend/src/api/generated/model/boardGroupCreate.ts @@ -9,7 +9,7 @@ * Payload for creating a board group. */ export interface BoardGroupCreate { - description?: string | null; name: string; slug: string; + description?: string | null; } diff --git a/frontend/src/api/generated/model/boardGroupHeartbeatApply.ts b/frontend/src/api/generated/model/boardGroupHeartbeatApply.ts index b7bd18ca..70d15e60 100644 --- a/frontend/src/api/generated/model/boardGroupHeartbeatApply.ts +++ b/frontend/src/api/generated/model/boardGroupHeartbeatApply.ts @@ -11,5 +11,4 @@ export interface BoardGroupHeartbeatApply { every: string; include_board_leads?: boolean; - target?: string | null; } diff --git a/frontend/src/api/generated/model/boardGroupHeartbeatApplyResult.ts b/frontend/src/api/generated/model/boardGroupHeartbeatApplyResult.ts index d5bb950a..298eb90e 100644 --- a/frontend/src/api/generated/model/boardGroupHeartbeatApplyResult.ts +++ b/frontend/src/api/generated/model/boardGroupHeartbeatApplyResult.ts @@ -11,7 +11,7 @@ import type { BoardGroupHeartbeatApplyResultRequested } from "./boardGroupHeartb */ export interface BoardGroupHeartbeatApplyResult { board_group_id: string; - failed_agent_ids: string[]; requested: BoardGroupHeartbeatApplyResultRequested; updated_agent_ids: string[]; + failed_agent_ids: string[]; } diff --git a/frontend/src/api/generated/model/boardGroupMemoryCreate.ts b/frontend/src/api/generated/model/boardGroupMemoryCreate.ts index 92bac015..547af52a 100644 --- a/frontend/src/api/generated/model/boardGroupMemoryCreate.ts +++ b/frontend/src/api/generated/model/boardGroupMemoryCreate.ts @@ -11,6 +11,6 @@ export interface BoardGroupMemoryCreate { /** @minLength 1 */ content: string; - source?: string | null; tags?: string[] | null; + source?: string | null; } diff --git a/frontend/src/api/generated/model/boardGroupMemoryRead.ts b/frontend/src/api/generated/model/boardGroupMemoryRead.ts index 364d468d..ba2d1a14 100644 --- a/frontend/src/api/generated/model/boardGroupMemoryRead.ts +++ b/frontend/src/api/generated/model/boardGroupMemoryRead.ts @@ -9,11 +9,11 @@ * Serialized board-group memory entry returned from read endpoints. */ export interface BoardGroupMemoryRead { + id: string; board_group_id: string; content: string; - created_at: string; - id: string; - is_chat?: boolean; - source?: string | null; tags?: string[] | null; + source?: string | null; + is_chat?: boolean; + created_at: string; } diff --git a/frontend/src/api/generated/model/boardGroupRead.ts b/frontend/src/api/generated/model/boardGroupRead.ts index 174c3cc7..91e0a584 100644 --- a/frontend/src/api/generated/model/boardGroupRead.ts +++ b/frontend/src/api/generated/model/boardGroupRead.ts @@ -9,11 +9,11 @@ * Board-group payload returned from read endpoints. */ export interface BoardGroupRead { - created_at: string; + name: string; + slug: string; description?: string | null; id: string; - name: string; organization_id: string; - slug: string; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/boardGroupSnapshot.ts b/frontend/src/api/generated/model/boardGroupSnapshot.ts index 7f6143d4..fc668108 100644 --- a/frontend/src/api/generated/model/boardGroupSnapshot.ts +++ b/frontend/src/api/generated/model/boardGroupSnapshot.ts @@ -11,6 +11,6 @@ import type { BoardGroupRead } from "./boardGroupRead"; * Top-level board-group snapshot response payload. */ export interface BoardGroupSnapshot { - boards?: BoardGroupBoardSnapshot[]; group?: BoardGroupRead | null; + boards?: BoardGroupBoardSnapshot[]; } diff --git a/frontend/src/api/generated/model/boardGroupTaskSummary.ts b/frontend/src/api/generated/model/boardGroupTaskSummary.ts index f71cb04f..28b76f12 100644 --- a/frontend/src/api/generated/model/boardGroupTaskSummary.ts +++ b/frontend/src/api/generated/model/boardGroupTaskSummary.ts @@ -10,17 +10,17 @@ import type { TagRef } from "./tagRef"; * Task summary row used inside board-group snapshot responses. */ export interface BoardGroupTaskSummary { - assigned_agent_id?: string | null; - assignee?: string | null; + id: string; board_id: string; board_name: string; - created_at: string; - due_at?: string | null; - id: string; - in_progress_at?: string | null; - priority: string; - status: string; - tags?: TagRef[]; title: string; + status: string; + priority: string; + assigned_agent_id?: string | null; + assignee?: string | null; + due_at?: string | null; + in_progress_at?: string | null; + tags?: TagRef[]; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/boardGroupUpdate.ts b/frontend/src/api/generated/model/boardGroupUpdate.ts index b8318905..b7a6e7a4 100644 --- a/frontend/src/api/generated/model/boardGroupUpdate.ts +++ b/frontend/src/api/generated/model/boardGroupUpdate.ts @@ -9,7 +9,7 @@ * Payload for partial board-group updates. */ export interface BoardGroupUpdate { - description?: string | null; name?: string | null; slug?: string | null; + description?: string | null; } diff --git a/frontend/src/api/generated/model/boardMemoryCreate.ts b/frontend/src/api/generated/model/boardMemoryCreate.ts index f2b1afbc..30900a0c 100644 --- a/frontend/src/api/generated/model/boardMemoryCreate.ts +++ b/frontend/src/api/generated/model/boardMemoryCreate.ts @@ -11,6 +11,6 @@ export interface BoardMemoryCreate { /** @minLength 1 */ content: string; - source?: string | null; tags?: string[] | null; + source?: string | null; } diff --git a/frontend/src/api/generated/model/boardMemoryRead.ts b/frontend/src/api/generated/model/boardMemoryRead.ts index 805c493b..f8b1adcc 100644 --- a/frontend/src/api/generated/model/boardMemoryRead.ts +++ b/frontend/src/api/generated/model/boardMemoryRead.ts @@ -9,11 +9,11 @@ * Serialized board memory entry returned from read endpoints. */ export interface BoardMemoryRead { + id: string; board_id: string; content: string; - created_at: string; - id: string; - is_chat?: boolean; - source?: string | null; tags?: string[] | null; + source?: string | null; + is_chat?: boolean; + created_at: string; } diff --git a/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts b/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts index a2be93e4..351f258c 100644 --- a/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts +++ b/frontend/src/api/generated/model/boardOnboardingAgentComplete.ts @@ -13,10 +13,10 @@ 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; + lead_agent?: BoardOnboardingLeadAgentDraft | null; } diff --git a/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts b/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts index 2ca429e9..cef146c2 100644 --- a/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts +++ b/frontend/src/api/generated/model/boardOnboardingAgentQuestion.ts @@ -10,8 +10,8 @@ import type { BoardOnboardingQuestionOption } from "./boardOnboardingQuestionOpt * Question payload emitted by the onboarding assistant. */ export interface BoardOnboardingAgentQuestion { - /** @minItems 1 */ - options: BoardOnboardingQuestionOption[]; /** @minLength 1 */ question: string; + /** @minItems 1 */ + options: BoardOnboardingQuestionOption[]; } diff --git a/frontend/src/api/generated/model/boardOnboardingLeadAgentDraft.ts b/frontend/src/api/generated/model/boardOnboardingLeadAgentDraft.ts index a1bf356d..5778dcdb 100644 --- a/frontend/src/api/generated/model/boardOnboardingLeadAgentDraft.ts +++ b/frontend/src/api/generated/model/boardOnboardingLeadAgentDraft.ts @@ -10,11 +10,11 @@ import type { BoardOnboardingLeadAgentDraftIdentityProfile } from "./boardOnboar * Editable lead-agent draft configuration. */ export interface BoardOnboardingLeadAgentDraft { - autonomy_level?: "ask_first" | "balanced" | "autonomous" | null; - custom_instructions?: string | null; - identity_profile?: BoardOnboardingLeadAgentDraftIdentityProfile; name?: string | null; + identity_profile?: BoardOnboardingLeadAgentDraftIdentityProfile; + autonomy_level?: "ask_first" | "balanced" | "autonomous" | null; + verbosity?: "concise" | "balanced" | "detailed" | null; output_format?: "bullets" | "mixed" | "narrative" | null; update_cadence?: "asap" | "hourly" | "daily" | "weekly" | null; - verbosity?: "concise" | "balanced" | "detailed" | null; + custom_instructions?: string | null; } diff --git a/frontend/src/api/generated/model/boardOnboardingRead.ts b/frontend/src/api/generated/model/boardOnboardingRead.ts index e93ae067..61135086 100644 --- a/frontend/src/api/generated/model/boardOnboardingRead.ts +++ b/frontend/src/api/generated/model/boardOnboardingRead.ts @@ -11,12 +11,12 @@ import type { BoardOnboardingReadMessages } from "./boardOnboardingReadMessages" * Stored onboarding session state returned by API endpoints. */ export interface BoardOnboardingRead { - board_id: string; - created_at: string; - draft_goal?: BoardOnboardingAgentComplete | null; id: string; - messages?: BoardOnboardingReadMessages; + board_id: string; session_key: string; status: string; + messages?: BoardOnboardingReadMessages; + draft_goal?: BoardOnboardingAgentComplete | null; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/boardOnboardingUserProfile.ts b/frontend/src/api/generated/model/boardOnboardingUserProfile.ts index 8c933ac7..10d2599a 100644 --- a/frontend/src/api/generated/model/boardOnboardingUserProfile.ts +++ b/frontend/src/api/generated/model/boardOnboardingUserProfile.ts @@ -9,9 +9,9 @@ * User-profile preferences gathered during onboarding. */ export interface BoardOnboardingUserProfile { - context?: 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/model/boardRead.ts b/frontend/src/api/generated/model/boardRead.ts index 6b54056d..f7482496 100644 --- a/frontend/src/api/generated/model/boardRead.ts +++ b/frontend/src/api/generated/model/boardRead.ts @@ -10,25 +10,25 @@ import type { BoardReadSuccessMetrics } from "./boardReadSuccessMetrics"; * Board payload returned from read endpoints. */ export interface BoardRead { - block_status_changes_with_pending_approval?: boolean; - board_group_id?: string | null; - board_type?: string; - created_at: string; + name: string; + slug: string; description: string; gateway_id?: string | null; - goal_confirmed?: boolean; - goal_source?: string | null; - id: string; - /** @minimum 0 */ - max_agents?: number; - name: string; + board_group_id?: string | null; + board_type?: string; objective?: string | null; - only_lead_can_change_status?: boolean; - organization_id: string; - require_approval_for_done?: boolean; - require_review_before_done?: boolean; - slug: string; success_metrics?: BoardReadSuccessMetrics; target_date?: string | null; + goal_confirmed?: boolean; + goal_source?: string | null; + require_approval_for_done?: boolean; + require_review_before_done?: boolean; + block_status_changes_with_pending_approval?: boolean; + only_lead_can_change_status?: boolean; + /** @minimum 0 */ + max_agents?: number; + id: string; + organization_id: string; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/boardSnapshot.ts b/frontend/src/api/generated/model/boardSnapshot.ts index a7528218..10bee2fd 100644 --- a/frontend/src/api/generated/model/boardSnapshot.ts +++ b/frontend/src/api/generated/model/boardSnapshot.ts @@ -14,10 +14,10 @@ import type { TaskCardRead } from "./taskCardRead"; * Aggregated board payload used by board snapshot endpoints. */ 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 42c106a0..19c57fed 100644 --- a/frontend/src/api/generated/model/boardUpdate.ts +++ b/frontend/src/api/generated/model/boardUpdate.ts @@ -10,20 +10,20 @@ import type { BoardUpdateSuccessMetrics } from "./boardUpdateSuccessMetrics"; * Payload for partial board updates. */ export interface BoardUpdate { - block_status_changes_with_pending_approval?: boolean | null; - board_group_id?: string | null; - board_type?: string | null; + name?: string | null; + slug?: string | null; description?: string | null; gateway_id?: string | null; - goal_confirmed?: boolean | null; - goal_source?: string | null; - max_agents?: number | null; - name?: string | null; + board_group_id?: string | null; + board_type?: string | null; objective?: string | null; - only_lead_can_change_status?: boolean | null; - require_approval_for_done?: boolean | null; - require_review_before_done?: boolean | null; - slug?: string | null; success_metrics?: BoardUpdateSuccessMetrics; target_date?: string | null; + goal_confirmed?: boolean | null; + goal_source?: string | null; + require_approval_for_done?: boolean | null; + require_review_before_done?: boolean | null; + block_status_changes_with_pending_approval?: boolean | null; + only_lead_can_change_status?: boolean | null; + max_agents?: number | null; } diff --git a/frontend/src/api/generated/model/boardWebhookCreate.ts b/frontend/src/api/generated/model/boardWebhookCreate.ts index 9514bc17..a1874834 100644 --- a/frontend/src/api/generated/model/boardWebhookCreate.ts +++ b/frontend/src/api/generated/model/boardWebhookCreate.ts @@ -12,4 +12,5 @@ export interface BoardWebhookCreate { /** @minLength 1 */ description: string; enabled?: boolean; + agent_id?: string | null; } diff --git a/frontend/src/api/generated/model/boardWebhookIngestResponse.ts b/frontend/src/api/generated/model/boardWebhookIngestResponse.ts index 806dcb4c..179c77d7 100644 --- a/frontend/src/api/generated/model/boardWebhookIngestResponse.ts +++ b/frontend/src/api/generated/model/boardWebhookIngestResponse.ts @@ -9,8 +9,8 @@ * Response payload for inbound webhook ingestion. */ export interface BoardWebhookIngestResponse { - board_id: string; ok?: boolean; - payload_id: string; + board_id: string; webhook_id: string; + payload_id: string; } diff --git a/frontend/src/api/generated/model/boardWebhookPayloadRead.ts b/frontend/src/api/generated/model/boardWebhookPayloadRead.ts index 846b388c..ebd79a3b 100644 --- a/frontend/src/api/generated/model/boardWebhookPayloadRead.ts +++ b/frontend/src/api/generated/model/boardWebhookPayloadRead.ts @@ -11,12 +11,12 @@ import type { BoardWebhookPayloadReadPayload } from "./boardWebhookPayloadReadPa * Serialized stored webhook payload. */ export interface BoardWebhookPayloadRead { - board_id: string; - content_type?: string | null; - headers?: BoardWebhookPayloadReadHeaders; id: string; - payload?: BoardWebhookPayloadReadPayload; - received_at: string; - source_ip?: string | null; + board_id: string; webhook_id: string; + payload?: BoardWebhookPayloadReadPayload; + headers?: BoardWebhookPayloadReadHeaders; + source_ip?: string | null; + content_type?: string | null; + received_at: string; } diff --git a/frontend/src/api/generated/model/boardWebhookRead.ts b/frontend/src/api/generated/model/boardWebhookRead.ts index f07ce768..2c8d5445 100644 --- a/frontend/src/api/generated/model/boardWebhookRead.ts +++ b/frontend/src/api/generated/model/boardWebhookRead.ts @@ -9,12 +9,13 @@ * Serialized board webhook configuration. */ export interface BoardWebhookRead { + id: string; board_id: string; - created_at: string; + agent_id?: string | null; description: string; enabled: boolean; endpoint_path: string; endpoint_url?: string | null; - id: string; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/boardWebhookUpdate.ts b/frontend/src/api/generated/model/boardWebhookUpdate.ts index 46e27c5c..543896b1 100644 --- a/frontend/src/api/generated/model/boardWebhookUpdate.ts +++ b/frontend/src/api/generated/model/boardWebhookUpdate.ts @@ -11,4 +11,5 @@ export interface BoardWebhookUpdate { description?: string | null; enabled?: boolean | null; + agent_id?: string | null; } diff --git a/frontend/src/api/generated/model/dashboardKpis.ts b/frontend/src/api/generated/model/dashboardKpis.ts index e021dcda..f35f615f 100644 --- a/frontend/src/api/generated/model/dashboardKpis.ts +++ b/frontend/src/api/generated/model/dashboardKpis.ts @@ -10,7 +10,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 8995820a..478a3d97 100644 --- a/frontend/src/api/generated/model/dashboardMetrics.ts +++ b/frontend/src/api/generated/model/dashboardMetrics.ts @@ -13,11 +13,11 @@ import type { DashboardWipSeriesSet } from "./dashboardWipSeriesSet"; * Complete dashboard metrics response payload. */ export interface DashboardMetrics { - cycle_time: DashboardSeriesSet; - error_rate: DashboardSeriesSet; + range: DashboardMetricsRange; generated_at: string; kpis: DashboardKpis; - range: DashboardMetricsRange; throughput: DashboardSeriesSet; + cycle_time: DashboardSeriesSet; + error_rate: DashboardSeriesSet; wip: DashboardWipSeriesSet; } diff --git a/frontend/src/api/generated/model/dashboardRangeSeries.ts b/frontend/src/api/generated/model/dashboardRangeSeries.ts index f996bcfa..9e3fd7ae 100644 --- a/frontend/src/api/generated/model/dashboardRangeSeries.ts +++ b/frontend/src/api/generated/model/dashboardRangeSeries.ts @@ -12,7 +12,7 @@ import type { DashboardSeriesPoint } from "./dashboardSeriesPoint"; * Series payload for a single range/bucket combination. */ 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 086f4159..c7742a2b 100644 --- a/frontend/src/api/generated/model/dashboardSeriesSet.ts +++ b/frontend/src/api/generated/model/dashboardSeriesSet.ts @@ -10,6 +10,6 @@ import type { DashboardRangeSeries } from "./dashboardRangeSeries"; * Primary vs comparison pair for generic series metrics. */ export interface DashboardSeriesSet { - comparison: DashboardRangeSeries; primary: DashboardRangeSeries; + comparison: DashboardRangeSeries; } diff --git a/frontend/src/api/generated/model/dashboardWipPoint.ts b/frontend/src/api/generated/model/dashboardWipPoint.ts index 7390dee8..b36c941b 100644 --- a/frontend/src/api/generated/model/dashboardWipPoint.ts +++ b/frontend/src/api/generated/model/dashboardWipPoint.ts @@ -9,9 +9,9 @@ * Work-in-progress point split by task status buckets. */ export interface DashboardWipPoint { - done: number; - in_progress: number; - inbox: number; period: string; + inbox: number; + in_progress: number; review: number; + done: number; } diff --git a/frontend/src/api/generated/model/dashboardWipRangeSeries.ts b/frontend/src/api/generated/model/dashboardWipRangeSeries.ts index e439b044..26545332 100644 --- a/frontend/src/api/generated/model/dashboardWipRangeSeries.ts +++ b/frontend/src/api/generated/model/dashboardWipRangeSeries.ts @@ -12,7 +12,7 @@ import type { DashboardWipRangeSeriesRange } from "./dashboardWipRangeSeriesRang * WIP series payload for a single range/bucket combination. */ 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 f2f9e9c6..ff4c59b2 100644 --- a/frontend/src/api/generated/model/dashboardWipSeriesSet.ts +++ b/frontend/src/api/generated/model/dashboardWipSeriesSet.ts @@ -10,6 +10,6 @@ import type { DashboardWipRangeSeries } from "./dashboardWipRangeSeries"; * Primary vs comparison pair for WIP status series metrics. */ export interface DashboardWipSeriesSet { - comparison: DashboardWipRangeSeries; primary: DashboardWipRangeSeries; + comparison: DashboardWipRangeSeries; } diff --git a/frontend/src/api/generated/model/gatewayCommandsResponse.ts b/frontend/src/api/generated/model/gatewayCommandsResponse.ts index d763c033..592df7e7 100644 --- a/frontend/src/api/generated/model/gatewayCommandsResponse.ts +++ b/frontend/src/api/generated/model/gatewayCommandsResponse.ts @@ -9,7 +9,7 @@ * Gateway command catalog and protocol metadata. */ export interface GatewayCommandsResponse { - events: string[]; - methods: string[]; protocol_version: number; + methods: string[]; + events: string[]; } diff --git a/frontend/src/api/generated/model/gatewayCreate.ts b/frontend/src/api/generated/model/gatewayCreate.ts index 9d468e99..0fff7e4a 100644 --- a/frontend/src/api/generated/model/gatewayCreate.ts +++ b/frontend/src/api/generated/model/gatewayCreate.ts @@ -10,7 +10,7 @@ */ export interface GatewayCreate { name: string; - token?: string | null; url: string; workspace_root: string; + token?: string | null; } diff --git a/frontend/src/api/generated/model/gatewayLeadBroadcastBoardResult.ts b/frontend/src/api/generated/model/gatewayLeadBroadcastBoardResult.ts index 6125a147..dac6c6df 100644 --- a/frontend/src/api/generated/model/gatewayLeadBroadcastBoardResult.ts +++ b/frontend/src/api/generated/model/gatewayLeadBroadcastBoardResult.ts @@ -9,9 +9,14 @@ * Per-board result entry for a lead broadcast operation. */ export interface GatewayLeadBroadcastBoardResult { + /** Target board id for this result. */ board_id: string; - error?: string | null; + /** Resolved lead agent id for the target board. */ lead_agent_id?: string | null; + /** Resolved lead agent display name. */ lead_agent_name?: string | null; + /** Whether this board delivery succeeded. */ ok?: boolean; + /** Failure reason if this board failed. */ + error?: string | null; } diff --git a/frontend/src/api/generated/model/gatewayLeadBroadcastRequest.ts b/frontend/src/api/generated/model/gatewayLeadBroadcastRequest.ts index 672fa182..1fb5fb28 100644 --- a/frontend/src/api/generated/model/gatewayLeadBroadcastRequest.ts +++ b/frontend/src/api/generated/model/gatewayLeadBroadcastRequest.ts @@ -10,11 +10,19 @@ import type { GatewayLeadBroadcastRequestKind } from "./gatewayLeadBroadcastRequ * Request payload for broadcasting a message to multiple board leads. */ export interface GatewayLeadBroadcastRequest { - board_ids?: string[] | null; - /** @minLength 1 */ - content: string; - correlation_id?: string | null; + /** Broadcast intent. `question` asks for responses; `handoff` requests transfer. */ kind?: GatewayLeadBroadcastRequestKind; - reply_source?: string | null; + /** Optional correlation token shared with downstream handlers. */ + correlation_id?: string | null; + /** + * Message content distributed to selected board leads. + * @minLength 1 + */ + content: string; + /** Optional explicit list of board IDs; omit for lead-scoped defaults. */ + board_ids?: string[] | null; + /** Tags required by reply templates when each lead responds. */ reply_tags?: string[]; + /** Reply destination key for broadcast responses. */ + reply_source?: string | null; } diff --git a/frontend/src/api/generated/model/gatewayLeadBroadcastRequestKind.ts b/frontend/src/api/generated/model/gatewayLeadBroadcastRequestKind.ts index 25714407..99e50b8a 100644 --- a/frontend/src/api/generated/model/gatewayLeadBroadcastRequestKind.ts +++ b/frontend/src/api/generated/model/gatewayLeadBroadcastRequestKind.ts @@ -5,6 +5,9 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Broadcast intent. `question` asks for responses; `handoff` requests transfer. + */ export type GatewayLeadBroadcastRequestKind = (typeof GatewayLeadBroadcastRequestKind)[keyof typeof GatewayLeadBroadcastRequestKind]; diff --git a/frontend/src/api/generated/model/gatewayLeadBroadcastResponse.ts b/frontend/src/api/generated/model/gatewayLeadBroadcastResponse.ts index ac326a0e..42013c6e 100644 --- a/frontend/src/api/generated/model/gatewayLeadBroadcastResponse.ts +++ b/frontend/src/api/generated/model/gatewayLeadBroadcastResponse.ts @@ -10,8 +10,11 @@ import type { GatewayLeadBroadcastBoardResult } from "./gatewayLeadBroadcastBoar * Aggregate response for a lead broadcast operation. */ export interface GatewayLeadBroadcastResponse { - failed?: number; + /** Whether broadcast execution succeeded. */ ok?: boolean; - results?: GatewayLeadBroadcastBoardResult[]; + /** Number of boards successfully messaged. */ sent?: number; + /** Number of boards that failed messaging. */ + failed?: number; + results?: GatewayLeadBroadcastBoardResult[]; } diff --git a/frontend/src/api/generated/model/gatewayLeadMessageRequest.ts b/frontend/src/api/generated/model/gatewayLeadMessageRequest.ts index 694b6857..3e64d707 100644 --- a/frontend/src/api/generated/model/gatewayLeadMessageRequest.ts +++ b/frontend/src/api/generated/model/gatewayLeadMessageRequest.ts @@ -10,10 +10,17 @@ import type { GatewayLeadMessageRequestKind } from "./gatewayLeadMessageRequestK * Request payload for sending a message to a board lead agent. */ export interface GatewayLeadMessageRequest { - /** @minLength 1 */ - content: string; - correlation_id?: string | null; + /** Routing mode for lead messages. */ kind?: GatewayLeadMessageRequestKind; - reply_source?: string | null; + /** Optional correlation token shared across upstream and downstream systems. */ + correlation_id?: string | null; + /** + * Human-readable body sent to lead agents. + * @minLength 1 + */ + content: string; + /** Tags required by reply templates when the lead responds. */ reply_tags?: string[]; + /** Reply destination key for the orchestrator. */ + reply_source?: string | null; } diff --git a/frontend/src/api/generated/model/gatewayLeadMessageRequestKind.ts b/frontend/src/api/generated/model/gatewayLeadMessageRequestKind.ts index 14bad10f..0892984f 100644 --- a/frontend/src/api/generated/model/gatewayLeadMessageRequestKind.ts +++ b/frontend/src/api/generated/model/gatewayLeadMessageRequestKind.ts @@ -5,6 +5,9 @@ * OpenAPI spec version: 0.1.0 */ +/** + * Routing mode for lead messages. + */ export type GatewayLeadMessageRequestKind = (typeof GatewayLeadMessageRequestKind)[keyof typeof GatewayLeadMessageRequestKind]; diff --git a/frontend/src/api/generated/model/gatewayLeadMessageResponse.ts b/frontend/src/api/generated/model/gatewayLeadMessageResponse.ts index 00604cc5..d890c49a 100644 --- a/frontend/src/api/generated/model/gatewayLeadMessageResponse.ts +++ b/frontend/src/api/generated/model/gatewayLeadMessageResponse.ts @@ -9,9 +9,14 @@ * Response payload for a lead-message dispatch attempt. */ export interface GatewayLeadMessageResponse { - board_id: string; - lead_agent_id?: string | null; - lead_agent_name?: string | null; - lead_created?: boolean; + /** Whether dispatch was accepted. */ ok?: boolean; + /** Board receiving the message. */ + board_id: string; + /** Resolved lead agent id when present. */ + lead_agent_id?: string | null; + /** Resolved lead agent display name. */ + lead_agent_name?: string | null; + /** Whether a lead fallback actor was created during routing. */ + lead_created?: boolean; } diff --git a/frontend/src/api/generated/model/gatewayMainAskUserRequest.ts b/frontend/src/api/generated/model/gatewayMainAskUserRequest.ts index 9f410503..77c77d5a 100644 --- a/frontend/src/api/generated/model/gatewayMainAskUserRequest.ts +++ b/frontend/src/api/generated/model/gatewayMainAskUserRequest.ts @@ -9,10 +9,17 @@ * Request payload for asking the end user via a main gateway agent. */ export interface GatewayMainAskUserRequest { - /** @minLength 1 */ - content: string; + /** Optional correlation token for tracing request/response flow. */ correlation_id?: string | null; + /** + * Prompt that should be asked to the human. + * @minLength 1 + */ + content: string; + /** Optional preferred messaging channel. */ preferred_channel?: string | null; - reply_source?: string | null; + /** Tags required for routing the user response. */ reply_tags?: string[]; + /** Reply destination key for user confirmation loops. */ + reply_source?: string | null; } diff --git a/frontend/src/api/generated/model/gatewayMainAskUserResponse.ts b/frontend/src/api/generated/model/gatewayMainAskUserResponse.ts index 544807bb..69a5c17b 100644 --- a/frontend/src/api/generated/model/gatewayMainAskUserResponse.ts +++ b/frontend/src/api/generated/model/gatewayMainAskUserResponse.ts @@ -9,8 +9,12 @@ * Response payload for user-question dispatch via gateway main agent. */ export interface GatewayMainAskUserResponse { - board_id: string; - main_agent_id?: string | null; - main_agent_name?: string | null; + /** Whether ask-user dispatch was accepted. */ ok?: boolean; + /** Board context used for the request. */ + board_id: string; + /** Resolved main agent id handling the ask. */ + main_agent_id?: string | null; + /** Resolved main agent display name. */ + main_agent_name?: string | null; } diff --git a/frontend/src/api/generated/model/gatewayRead.ts b/frontend/src/api/generated/model/gatewayRead.ts index 50404490..03dcc40c 100644 --- a/frontend/src/api/generated/model/gatewayRead.ts +++ b/frontend/src/api/generated/model/gatewayRead.ts @@ -9,12 +9,12 @@ * Gateway payload returned from read endpoints. */ export interface GatewayRead { - created_at: string; - id: string; name: string; - organization_id: string; - token?: string | null; - updated_at: string; url: string; workspace_root: string; + id: string; + organization_id: string; + token?: string | null; + created_at: string; + updated_at: string; } diff --git a/frontend/src/api/generated/model/gatewaySessionsResponse.ts b/frontend/src/api/generated/model/gatewaySessionsResponse.ts index 8cf60e10..fba71fc7 100644 --- a/frontend/src/api/generated/model/gatewaySessionsResponse.ts +++ b/frontend/src/api/generated/model/gatewaySessionsResponse.ts @@ -9,6 +9,6 @@ * Gateway sessions list response payload. */ export interface GatewaySessionsResponse { - main_session?: unknown | null; sessions: unknown[]; + main_session?: unknown | null; } diff --git a/frontend/src/api/generated/model/gatewayTemplatesSyncResult.ts b/frontend/src/api/generated/model/gatewayTemplatesSyncResult.ts index f6e19d8c..2eb14d87 100644 --- a/frontend/src/api/generated/model/gatewayTemplatesSyncResult.ts +++ b/frontend/src/api/generated/model/gatewayTemplatesSyncResult.ts @@ -10,11 +10,11 @@ import type { GatewayTemplatesSyncError } from "./gatewayTemplatesSyncError"; * Summary payload returned by gateway template sync endpoints. */ export interface GatewayTemplatesSyncResult { - agents_skipped: number; - agents_updated: number; - errors?: GatewayTemplatesSyncError[]; gateway_id: string; include_main: boolean; - main_updated: boolean; reset_sessions: boolean; + agents_updated: number; + agents_skipped: number; + main_updated: boolean; + errors?: GatewayTemplatesSyncError[]; } diff --git a/frontend/src/api/generated/model/gatewayUpdate.ts b/frontend/src/api/generated/model/gatewayUpdate.ts index 512955f8..e5f237ef 100644 --- a/frontend/src/api/generated/model/gatewayUpdate.ts +++ b/frontend/src/api/generated/model/gatewayUpdate.ts @@ -10,7 +10,7 @@ */ export interface GatewayUpdate { name?: string | null; - token?: string | null; url?: string | null; + token?: 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 cea5a7a7..0c591e17 100644 --- a/frontend/src/api/generated/model/gatewaysStatusResponse.ts +++ b/frontend/src/api/generated/model/gatewaysStatusResponse.ts @@ -10,10 +10,10 @@ */ export interface GatewaysStatusResponse { connected: boolean; - error?: string | null; gateway_url: string; + sessions_count?: number | null; + sessions?: unknown[] | null; main_session?: unknown | null; main_session_error?: string | null; - sessions?: unknown[] | null; - sessions_count?: number | null; + error?: string | null; } diff --git a/frontend/src/api/generated/model/healthStatusResponse.ts b/frontend/src/api/generated/model/healthStatusResponse.ts new file mode 100644 index 00000000..77f20e09 --- /dev/null +++ b/frontend/src/api/generated/model/healthStatusResponse.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +/** + * Standard payload for service liveness/readiness checks. + */ +export interface HealthStatusResponse { + /** Indicates whether the probe check succeeded. */ + ok: boolean; +} diff --git a/frontend/src/api/generated/model/index.ts b/frontend/src/api/generated/model/index.ts index f4c7f493..b2357468 100644 --- a/frontend/src/api/generated/model/index.ts +++ b/frontend/src/api/generated/model/index.ts @@ -112,6 +112,7 @@ export * from "./getBoardGroupSnapshotApiV1BoardsBoardIdGroupSnapshotGetParams"; export * from "./getGatewaySessionApiV1GatewaysSessionsSessionIdGetParams"; export * from "./getSessionHistoryApiV1GatewaysSessionsSessionIdHistoryGetParams"; export * from "./healthHealthGet200"; +export * from "./healthStatusResponse"; export * from "./healthzHealthzGet200"; export * from "./hTTPValidationError"; export * from "./installMarketplaceSkillApiV1SkillsMarketplaceSkillIdInstallPostParams"; @@ -156,10 +157,14 @@ export * from "./listTaskCommentsApiV1AgentBoardsBoardIdTasksTaskIdCommentsGetPa export * from "./listTaskCommentsApiV1BoardsBoardIdTasksTaskIdCommentsGetParams"; export * from "./listTasksApiV1AgentBoardsBoardIdTasksGetParams"; export * from "./listTasksApiV1BoardsBoardIdTasksGetParams"; +export * from "./lLMErrorResponse"; +export * from "./lLMErrorResponseDetail"; export * from "./marketplaceSkillActionResponse"; export * from "./marketplaceSkillCardRead"; +export * from "./marketplaceSkillCardReadMetadata"; export * from "./marketplaceSkillCreate"; export * from "./marketplaceSkillRead"; +export * from "./marketplaceSkillReadMetadata"; export * from "./okResponse"; export * from "./organizationActiveUpdate"; export * from "./organizationBoardAccessRead"; @@ -178,7 +183,9 @@ export * from "./readyzReadyzGet200"; export * from "./searchApiV1SoulsDirectorySearchGetParams"; export * from "./sendGatewaySessionMessageApiV1GatewaysSessionsSessionIdMessagePostParams"; export * from "./skillPackCreate"; +export * from "./skillPackCreateMetadata"; export * from "./skillPackRead"; +export * from "./skillPackReadMetadata"; export * from "./skillPackSyncResponse"; export * from "./soulsDirectoryMarkdownResponse"; export * from "./soulsDirectorySearchResponse"; diff --git a/frontend/src/api/generated/model/lLMErrorResponse.ts b/frontend/src/api/generated/model/lLMErrorResponse.ts new file mode 100644 index 00000000..f8abaaf9 --- /dev/null +++ b/frontend/src/api/generated/model/lLMErrorResponse.ts @@ -0,0 +1,21 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ +import type { LLMErrorResponseDetail } from "./lLMErrorResponseDetail"; + +/** + * Standardized LLM-facing error payload used by API contracts. + */ +export interface LLMErrorResponse { + /** Error payload. Agents should rely on `code` when present and default to `message` for fallback display. */ + detail: LLMErrorResponseDetail; + /** Request correlation identifier injected by middleware. */ + request_id?: string | null; + /** Optional machine-readable error code. */ + code?: string | null; + /** Whether a client should retry the call after remediating transient conditions. */ + retryable?: boolean | null; +} diff --git a/frontend/src/api/generated/model/lLMErrorResponseDetail.ts b/frontend/src/api/generated/model/lLMErrorResponseDetail.ts new file mode 100644 index 00000000..230029d7 --- /dev/null +++ b/frontend/src/api/generated/model/lLMErrorResponseDetail.ts @@ -0,0 +1,14 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +/** + * Error payload. Agents should rely on `code` when present and default to `message` for fallback display. + */ +export type LLMErrorResponseDetail = + | string + | { [key: string]: unknown } + | unknown[]; diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityEventRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityEventRead.ts index 78b90866..2cb816c0 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/limitOffsetPageTypeVarCustomizedActivityTaskCommentFeedItemRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityTaskCommentFeedItemRead.ts index f39d782b..bf550703 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityTaskCommentFeedItemRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedActivityTaskCommentFeedItemRead.ts @@ -8,10 +8,10 @@ import type { ActivityTaskCommentFeedItemRead } from "./activityTaskCommentFeedI export interface LimitOffsetPageTypeVarCustomizedActivityTaskCommentFeedItemRead { items: ActivityTaskCommentFeedItemRead[]; + /** @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 7c254542..64dba628 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 0d66176c..7b912d65 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/limitOffsetPageTypeVarCustomizedBoardGroupMemoryRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardGroupMemoryRead.ts index 5588cd95..94e07678 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardGroupMemoryRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardGroupMemoryRead.ts @@ -8,10 +8,10 @@ import type { BoardGroupMemoryRead } from "./boardGroupMemoryRead"; export interface LimitOffsetPageTypeVarCustomizedBoardGroupMemoryRead { items: BoardGroupMemoryRead[]; + /** @minimum 0 */ + total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; - /** @minimum 0 */ - total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardGroupRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardGroupRead.ts index ea0633d8..95689ab5 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardGroupRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardGroupRead.ts @@ -8,10 +8,10 @@ import type { BoardGroupRead } from "./boardGroupRead"; export interface LimitOffsetPageTypeVarCustomizedBoardGroupRead { items: BoardGroupRead[]; + /** @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 fdf4acda..5af7a346 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 d182bde6..dffce1a2 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/limitOffsetPageTypeVarCustomizedBoardWebhookPayloadRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardWebhookPayloadRead.ts index e9fe9f71..67191dad 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardWebhookPayloadRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardWebhookPayloadRead.ts @@ -8,10 +8,10 @@ import type { BoardWebhookPayloadRead } from "./boardWebhookPayloadRead"; export interface LimitOffsetPageTypeVarCustomizedBoardWebhookPayloadRead { items: BoardWebhookPayloadRead[]; + /** @minimum 0 */ + total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; - /** @minimum 0 */ - total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardWebhookRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardWebhookRead.ts index 6bde11ec..948770b8 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardWebhookRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedBoardWebhookRead.ts @@ -8,10 +8,10 @@ import type { BoardWebhookRead } from "./boardWebhookRead"; export interface LimitOffsetPageTypeVarCustomizedBoardWebhookRead { items: BoardWebhookRead[]; + /** @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 3bae8a3d..26228745 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/limitOffsetPageTypeVarCustomizedOrganizationInviteRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedOrganizationInviteRead.ts index cb770aa4..0640e516 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedOrganizationInviteRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedOrganizationInviteRead.ts @@ -8,10 +8,10 @@ import type { OrganizationInviteRead } from "./organizationInviteRead"; export interface LimitOffsetPageTypeVarCustomizedOrganizationInviteRead { items: OrganizationInviteRead[]; + /** @minimum 0 */ + total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; - /** @minimum 0 */ - total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedOrganizationMemberRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedOrganizationMemberRead.ts index f616673f..733e3cb6 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedOrganizationMemberRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedOrganizationMemberRead.ts @@ -8,10 +8,10 @@ import type { OrganizationMemberRead } from "./organizationMemberRead"; export interface LimitOffsetPageTypeVarCustomizedOrganizationMemberRead { items: OrganizationMemberRead[]; + /** @minimum 0 */ + total: number; /** @minimum 1 */ limit: number; /** @minimum 0 */ offset: number; - /** @minimum 0 */ - total: number; } diff --git a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTagRead.ts b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTagRead.ts index 521dff88..d1e4e40f 100644 --- a/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTagRead.ts +++ b/frontend/src/api/generated/model/limitOffsetPageTypeVarCustomizedTagRead.ts @@ -8,10 +8,10 @@ import type { TagRead } from "./tagRead"; export interface LimitOffsetPageTypeVarCustomizedTagRead { items: TagRead[]; + /** @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 dcb134f1..9fcfca2c 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 789f482b..a22715a0 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/listMarketplaceSkillsApiV1SkillsMarketplaceGetParams.ts b/frontend/src/api/generated/model/listMarketplaceSkillsApiV1SkillsMarketplaceGetParams.ts index 8c3ba180..a19609e1 100644 --- a/frontend/src/api/generated/model/listMarketplaceSkillsApiV1SkillsMarketplaceGetParams.ts +++ b/frontend/src/api/generated/model/listMarketplaceSkillsApiV1SkillsMarketplaceGetParams.ts @@ -7,4 +7,13 @@ export type ListMarketplaceSkillsApiV1SkillsMarketplaceGetParams = { gateway_id: string; + search?: string | null; + category?: string | null; + risk?: string | null; + pack_id?: string | null; + limit?: number | null; + /** + * @minimum 0 + */ + offset?: number; }; diff --git a/frontend/src/api/generated/model/marketplaceSkillActionResponse.ts b/frontend/src/api/generated/model/marketplaceSkillActionResponse.ts index 218a0789..5b081626 100644 --- a/frontend/src/api/generated/model/marketplaceSkillActionResponse.ts +++ b/frontend/src/api/generated/model/marketplaceSkillActionResponse.ts @@ -9,8 +9,8 @@ * Install/uninstall action response payload. */ export interface MarketplaceSkillActionResponse { - gateway_id: string; - installed: boolean; ok?: boolean; skill_id: string; + gateway_id: string; + installed: boolean; } diff --git a/frontend/src/api/generated/model/marketplaceSkillCardRead.ts b/frontend/src/api/generated/model/marketplaceSkillCardRead.ts index f63b94cd..15051071 100644 --- a/frontend/src/api/generated/model/marketplaceSkillCardRead.ts +++ b/frontend/src/api/generated/model/marketplaceSkillCardRead.ts @@ -4,21 +4,23 @@ * Mission Control API * OpenAPI spec version: 0.1.0 */ +import type { MarketplaceSkillCardReadMetadata } from "./marketplaceSkillCardReadMetadata"; /** * Marketplace card payload with gateway-specific install state. */ export interface MarketplaceSkillCardRead { - category?: string | null; - created_at: string; - description?: string | null; id: string; - installed: boolean; - installed_at?: string | null; - name: string; organization_id: string; + name: string; + description?: string | null; + category?: string | null; risk?: string | null; source?: string | null; source_url: string; + metadata?: MarketplaceSkillCardReadMetadata; + created_at: string; updated_at: string; + installed: boolean; + installed_at?: string | null; } diff --git a/frontend/src/api/generated/model/marketplaceSkillCardReadMetadata.ts b/frontend/src/api/generated/model/marketplaceSkillCardReadMetadata.ts new file mode 100644 index 00000000..245b3b1e --- /dev/null +++ b/frontend/src/api/generated/model/marketplaceSkillCardReadMetadata.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +export type MarketplaceSkillCardReadMetadata = { [key: string]: unknown }; diff --git a/frontend/src/api/generated/model/marketplaceSkillCreate.ts b/frontend/src/api/generated/model/marketplaceSkillCreate.ts index 8b9f6763..7c3c0380 100644 --- a/frontend/src/api/generated/model/marketplaceSkillCreate.ts +++ b/frontend/src/api/generated/model/marketplaceSkillCreate.ts @@ -9,8 +9,8 @@ * Payload used to register a skill URL in the organization marketplace. */ export interface MarketplaceSkillCreate { - description?: string | null; - name?: string | null; /** @minLength 1 */ source_url: string; + name?: string | null; + description?: string | null; } diff --git a/frontend/src/api/generated/model/marketplaceSkillRead.ts b/frontend/src/api/generated/model/marketplaceSkillRead.ts index da7673f9..096f53b4 100644 --- a/frontend/src/api/generated/model/marketplaceSkillRead.ts +++ b/frontend/src/api/generated/model/marketplaceSkillRead.ts @@ -4,19 +4,21 @@ * Mission Control API * OpenAPI spec version: 0.1.0 */ +import type { MarketplaceSkillReadMetadata } from "./marketplaceSkillReadMetadata"; /** * Serialized marketplace skill catalog record. */ export interface MarketplaceSkillRead { - category?: string | null; - created_at: string; - description?: string | null; id: string; - name: string; organization_id: string; + name: string; + description?: string | null; + category?: string | null; risk?: string | null; source?: string | null; source_url: string; + metadata?: MarketplaceSkillReadMetadata; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/marketplaceSkillReadMetadata.ts b/frontend/src/api/generated/model/marketplaceSkillReadMetadata.ts new file mode 100644 index 00000000..4846774c --- /dev/null +++ b/frontend/src/api/generated/model/marketplaceSkillReadMetadata.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +export type MarketplaceSkillReadMetadata = { [key: string]: unknown }; diff --git a/frontend/src/api/generated/model/organizationBoardAccessRead.ts b/frontend/src/api/generated/model/organizationBoardAccessRead.ts index 19b75f29..927cc9b0 100644 --- a/frontend/src/api/generated/model/organizationBoardAccessRead.ts +++ b/frontend/src/api/generated/model/organizationBoardAccessRead.ts @@ -9,10 +9,10 @@ * Board access payload returned from read endpoints. */ export interface OrganizationBoardAccessRead { + id: string; board_id: string; can_read: boolean; can_write: boolean; created_at: string; - id: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/organizationInviteCreate.ts b/frontend/src/api/generated/model/organizationInviteCreate.ts index ef8e9074..6cd653f0 100644 --- a/frontend/src/api/generated/model/organizationInviteCreate.ts +++ b/frontend/src/api/generated/model/organizationInviteCreate.ts @@ -10,9 +10,9 @@ import type { OrganizationBoardAccessSpec } from "./organizationBoardAccessSpec" * Payload for creating an organization invite. */ export interface OrganizationInviteCreate { + invited_email: string; + role?: string; all_boards_read?: boolean; all_boards_write?: boolean; board_access?: OrganizationBoardAccessSpec[]; - invited_email: string; - role?: string; } diff --git a/frontend/src/api/generated/model/organizationInviteRead.ts b/frontend/src/api/generated/model/organizationInviteRead.ts index 5cba137c..643a2691 100644 --- a/frontend/src/api/generated/model/organizationInviteRead.ts +++ b/frontend/src/api/generated/model/organizationInviteRead.ts @@ -9,16 +9,16 @@ * Organization invite payload returned from read endpoints. */ export interface OrganizationInviteRead { - accepted_at?: string | null; - accepted_by_user_id?: string | null; + id: string; + organization_id: string; + invited_email: string; + role: string; all_boards_read: boolean; all_boards_write: boolean; - created_at: string; - created_by_user_id?: string | null; - id: string; - invited_email: string; - organization_id: string; - role: string; token: string; + created_by_user_id?: string | null; + accepted_by_user_id?: string | null; + accepted_at?: string | null; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/organizationListItem.ts b/frontend/src/api/generated/model/organizationListItem.ts index 4c3cc08f..2283299c 100644 --- a/frontend/src/api/generated/model/organizationListItem.ts +++ b/frontend/src/api/generated/model/organizationListItem.ts @@ -10,7 +10,7 @@ */ export interface OrganizationListItem { id: string; - is_active: boolean; name: string; role: string; + is_active: boolean; } diff --git a/frontend/src/api/generated/model/organizationMemberRead.ts b/frontend/src/api/generated/model/organizationMemberRead.ts index 5e91c9a9..9516d4ed 100644 --- a/frontend/src/api/generated/model/organizationMemberRead.ts +++ b/frontend/src/api/generated/model/organizationMemberRead.ts @@ -11,14 +11,14 @@ import type { OrganizationUserRead } from "./organizationUserRead"; * Organization member payload including board-level access overrides. */ export interface OrganizationMemberRead { - all_boards_read: boolean; - all_boards_write: boolean; - board_access?: OrganizationBoardAccessRead[]; - created_at: string; id: string; organization_id: string; + user_id: string; role: string; + all_boards_read: boolean; + all_boards_write: boolean; + created_at: string; updated_at: string; user?: OrganizationUserRead | null; - user_id: string; + board_access?: OrganizationBoardAccessRead[]; } diff --git a/frontend/src/api/generated/model/organizationRead.ts b/frontend/src/api/generated/model/organizationRead.ts index 8e45126d..7c161e21 100644 --- a/frontend/src/api/generated/model/organizationRead.ts +++ b/frontend/src/api/generated/model/organizationRead.ts @@ -9,8 +9,8 @@ * Organization payload returned by read endpoints. */ export interface OrganizationRead { - created_at: string; id: string; name: string; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/organizationUserRead.ts b/frontend/src/api/generated/model/organizationUserRead.ts index 490973d0..592145dc 100644 --- a/frontend/src/api/generated/model/organizationUserRead.ts +++ b/frontend/src/api/generated/model/organizationUserRead.ts @@ -9,8 +9,8 @@ * Embedded user fields included in organization member payloads. */ export interface OrganizationUserRead { - email?: string | null; id: string; + email?: string | null; name?: string | null; preferred_name?: string | null; } diff --git a/frontend/src/api/generated/model/skillPackCreate.ts b/frontend/src/api/generated/model/skillPackCreate.ts index 847cf615..0e63b676 100644 --- a/frontend/src/api/generated/model/skillPackCreate.ts +++ b/frontend/src/api/generated/model/skillPackCreate.ts @@ -4,15 +4,16 @@ * Mission Control API * OpenAPI spec version: 0.1.0 */ +import type { SkillPackCreateMetadata } from "./skillPackCreateMetadata"; /** * Payload used to register a pack URL in the organization. */ export interface SkillPackCreate { - branch?: string; - description?: string | null; - name?: string | null; - metadata?: Record; /** @minLength 1 */ source_url: string; + name?: string | null; + description?: string | null; + branch?: string; + metadata?: SkillPackCreateMetadata; } diff --git a/frontend/src/api/generated/model/skillPackCreateMetadata.ts b/frontend/src/api/generated/model/skillPackCreateMetadata.ts new file mode 100644 index 00000000..3cc90822 --- /dev/null +++ b/frontend/src/api/generated/model/skillPackCreateMetadata.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +export type SkillPackCreateMetadata = { [key: string]: unknown }; diff --git a/frontend/src/api/generated/model/skillPackRead.ts b/frontend/src/api/generated/model/skillPackRead.ts index f6152608..2c0b6888 100644 --- a/frontend/src/api/generated/model/skillPackRead.ts +++ b/frontend/src/api/generated/model/skillPackRead.ts @@ -4,19 +4,20 @@ * Mission Control API * OpenAPI spec version: 0.1.0 */ +import type { SkillPackReadMetadata } from "./skillPackReadMetadata"; /** * Serialized skill pack record. */ export interface SkillPackRead { - created_at: string; - description?: string | null; id: string; - branch: string; - name: string; organization_id: string; - metadata: Record; - skill_count?: number; + name: string; + description?: string | null; source_url: string; + branch: string; + metadata?: SkillPackReadMetadata; + skill_count?: number; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/skillPackReadMetadata.ts b/frontend/src/api/generated/model/skillPackReadMetadata.ts new file mode 100644 index 00000000..307c24e0 --- /dev/null +++ b/frontend/src/api/generated/model/skillPackReadMetadata.ts @@ -0,0 +1,8 @@ +/** + * Generated by orval v8.3.0 🍺 + * Do not edit manually. + * Mission Control API + * OpenAPI spec version: 0.1.0 + */ + +export type SkillPackReadMetadata = { [key: string]: unknown }; diff --git a/frontend/src/api/generated/model/skillPackSyncResponse.ts b/frontend/src/api/generated/model/skillPackSyncResponse.ts index 8f0f099a..6ac3db7b 100644 --- a/frontend/src/api/generated/model/skillPackSyncResponse.ts +++ b/frontend/src/api/generated/model/skillPackSyncResponse.ts @@ -9,10 +9,10 @@ * Pack sync summary payload. */ export interface SkillPackSyncResponse { - created: number; ok?: boolean; - warnings: string[]; pack_id: string; synced: number; + created: number; updated: number; + warnings?: string[]; } diff --git a/frontend/src/api/generated/model/soulUpdateRequest.ts b/frontend/src/api/generated/model/soulUpdateRequest.ts index 4e0e840f..7d7865a8 100644 --- a/frontend/src/api/generated/model/soulUpdateRequest.ts +++ b/frontend/src/api/generated/model/soulUpdateRequest.ts @@ -10,6 +10,6 @@ */ export interface SoulUpdateRequest { content: string; - reason?: string | null; source_url?: string | null; + reason?: string | null; } diff --git a/frontend/src/api/generated/model/soulsDirectoryMarkdownResponse.ts b/frontend/src/api/generated/model/soulsDirectoryMarkdownResponse.ts index a7af0d70..e10e4545 100644 --- a/frontend/src/api/generated/model/soulsDirectoryMarkdownResponse.ts +++ b/frontend/src/api/generated/model/soulsDirectoryMarkdownResponse.ts @@ -9,7 +9,7 @@ * Response payload containing rendered markdown for a soul. */ export interface SoulsDirectoryMarkdownResponse { - content: string; handle: string; slug: string; + content: string; } diff --git a/frontend/src/api/generated/model/soulsDirectorySoulRef.ts b/frontend/src/api/generated/model/soulsDirectorySoulRef.ts index 6c1bb0a4..01bdf80a 100644 --- a/frontend/src/api/generated/model/soulsDirectorySoulRef.ts +++ b/frontend/src/api/generated/model/soulsDirectorySoulRef.ts @@ -10,7 +10,7 @@ */ export interface SoulsDirectorySoulRef { handle: string; + slug: string; page_url: string; raw_md_url: string; - slug: string; } diff --git a/frontend/src/api/generated/model/syncGatewayTemplatesApiV1GatewaysGatewayIdTemplatesSyncPostParams.ts b/frontend/src/api/generated/model/syncGatewayTemplatesApiV1GatewaysGatewayIdTemplatesSyncPostParams.ts index fa0f06cb..00fff9e5 100644 --- a/frontend/src/api/generated/model/syncGatewayTemplatesApiV1GatewaysGatewayIdTemplatesSyncPostParams.ts +++ b/frontend/src/api/generated/model/syncGatewayTemplatesApiV1GatewaysGatewayIdTemplatesSyncPostParams.ts @@ -8,6 +8,7 @@ export type SyncGatewayTemplatesApiV1GatewaysGatewayIdTemplatesSyncPostParams = { include_main?: boolean; + lead_only?: boolean; reset_sessions?: boolean; rotate_tokens?: boolean; force_bootstrap?: boolean; diff --git a/frontend/src/api/generated/model/tagCreate.ts b/frontend/src/api/generated/model/tagCreate.ts index 9c754724..5c5575c6 100644 --- a/frontend/src/api/generated/model/tagCreate.ts +++ b/frontend/src/api/generated/model/tagCreate.ts @@ -9,9 +9,9 @@ * Payload for creating a tag. */ export interface TagCreate { - color?: string; - description?: string | null; /** @minLength 1 */ name: string; slug?: string | null; + color?: string; + description?: string | null; } diff --git a/frontend/src/api/generated/model/tagRead.ts b/frontend/src/api/generated/model/tagRead.ts index af1d3bd3..49590325 100644 --- a/frontend/src/api/generated/model/tagRead.ts +++ b/frontend/src/api/generated/model/tagRead.ts @@ -9,13 +9,13 @@ * Tag payload returned from API endpoints. */ export interface TagRead { + name: string; + slug: string; color?: string; - created_at: string; description?: string | null; id: string; - name: string; organization_id: string; - slug: string; task_count?: number; + created_at: string; updated_at: string; } diff --git a/frontend/src/api/generated/model/tagRef.ts b/frontend/src/api/generated/model/tagRef.ts index 9b7d745b..2493c4fd 100644 --- a/frontend/src/api/generated/model/tagRef.ts +++ b/frontend/src/api/generated/model/tagRef.ts @@ -9,8 +9,8 @@ * Compact tag representation embedded in task payloads. */ export interface TagRef { - color: string; id: string; name: string; slug: string; + color: string; } diff --git a/frontend/src/api/generated/model/tagUpdate.ts b/frontend/src/api/generated/model/tagUpdate.ts index 4a18b9df..7877bcb8 100644 --- a/frontend/src/api/generated/model/tagUpdate.ts +++ b/frontend/src/api/generated/model/tagUpdate.ts @@ -9,8 +9,8 @@ * Payload for partial tag updates. */ export interface TagUpdate { - color?: string | null; - description?: string | null; name?: string | null; slug?: string | null; + color?: string | null; + description?: string | null; } diff --git a/frontend/src/api/generated/model/taskCardRead.ts b/frontend/src/api/generated/model/taskCardRead.ts index 02025221..67a51b98 100644 --- a/frontend/src/api/generated/model/taskCardRead.ts +++ b/frontend/src/api/generated/model/taskCardRead.ts @@ -12,25 +12,25 @@ import type { TaskCardReadStatus } from "./taskCardReadStatus"; * Task read model enriched with assignee and approval counters. */ export interface TaskCardRead { + title: string; + description?: string | null; + status?: TaskCardReadStatus; + priority?: string; + due_at?: string | null; + assigned_agent_id?: string | null; + depends_on_task_ids?: string[]; + tag_ids?: string[]; + id: string; + board_id: string | null; + created_by_user_id: string | null; + in_progress_at: string | null; + created_at: string; + updated_at: string; + blocked_by_task_ids?: string[]; + is_blocked?: boolean; + tags?: TagRef[]; + custom_field_values?: TaskCardReadCustomFieldValues; + assignee?: string | null; approvals_count?: number; approvals_pending_count?: number; - assigned_agent_id?: string | null; - assignee?: string | null; - blocked_by_task_ids?: string[]; - board_id: string | null; - created_at: string; - created_by_user_id: string | null; - custom_field_values?: TaskCardReadCustomFieldValues; - depends_on_task_ids?: string[]; - description?: string | null; - due_at?: string | null; - id: string; - in_progress_at: string | null; - is_blocked?: boolean; - priority?: string; - status?: TaskCardReadStatus; - tag_ids?: string[]; - tags?: TagRef[]; - title: string; - updated_at: string; } diff --git a/frontend/src/api/generated/model/taskCommentRead.ts b/frontend/src/api/generated/model/taskCommentRead.ts index faec4310..689f082c 100644 --- a/frontend/src/api/generated/model/taskCommentRead.ts +++ b/frontend/src/api/generated/model/taskCommentRead.ts @@ -9,9 +9,9 @@ * Task comment payload returned from read endpoints. */ 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 a8572c23..a3e2f7ef 100644 --- a/frontend/src/api/generated/model/taskCreate.ts +++ b/frontend/src/api/generated/model/taskCreate.ts @@ -11,14 +11,14 @@ import type { TaskCreateStatus } from "./taskCreateStatus"; * Payload for creating a task. */ export interface TaskCreate { + title: string; + description?: string | null; + status?: TaskCreateStatus; + priority?: string; + due_at?: string | null; assigned_agent_id?: string | null; + depends_on_task_ids?: string[]; + tag_ids?: string[]; created_by_user_id?: string | null; custom_field_values?: TaskCreateCustomFieldValues; - depends_on_task_ids?: string[]; - description?: string | null; - due_at?: string | null; - priority?: string; - status?: TaskCreateStatus; - tag_ids?: string[]; - title: string; } diff --git a/frontend/src/api/generated/model/taskCustomFieldDefinitionCreate.ts b/frontend/src/api/generated/model/taskCustomFieldDefinitionCreate.ts index b3486163..4a88dc97 100644 --- a/frontend/src/api/generated/model/taskCustomFieldDefinitionCreate.ts +++ b/frontend/src/api/generated/model/taskCustomFieldDefinitionCreate.ts @@ -11,15 +11,15 @@ import type { TaskCustomFieldDefinitionCreateUiVisibility } from "./taskCustomFi * Payload for creating a task custom field definition. */ export interface TaskCustomFieldDefinitionCreate { - /** @minItems 1 */ - board_ids: string[]; - default_value?: unknown | null; - description?: string | null; /** @minLength 1 */ field_key: string; - field_type?: TaskCustomFieldDefinitionCreateFieldType; label?: string | null; - required?: boolean; + field_type?: TaskCustomFieldDefinitionCreateFieldType; ui_visibility?: TaskCustomFieldDefinitionCreateUiVisibility; validation_regex?: string | null; + description?: string | null; + required?: boolean; + default_value?: unknown | null; + /** @minItems 1 */ + board_ids: string[]; } diff --git a/frontend/src/api/generated/model/taskCustomFieldDefinitionRead.ts b/frontend/src/api/generated/model/taskCustomFieldDefinitionRead.ts index 52c80665..2063ba0a 100644 --- a/frontend/src/api/generated/model/taskCustomFieldDefinitionRead.ts +++ b/frontend/src/api/generated/model/taskCustomFieldDefinitionRead.ts @@ -11,17 +11,17 @@ import type { TaskCustomFieldDefinitionReadUiVisibility } from "./taskCustomFiel * Payload returned for custom field definitions. */ export interface TaskCustomFieldDefinitionRead { + field_key: string; + label: string; + field_type: TaskCustomFieldDefinitionReadFieldType; + ui_visibility: TaskCustomFieldDefinitionReadUiVisibility; + validation_regex?: string | null; + description?: string | null; + required?: boolean; + default_value?: unknown | null; + id: string; + organization_id: string; board_ids?: string[]; created_at: string; - default_value?: unknown | null; - description?: string | null; - field_key: string; - field_type: TaskCustomFieldDefinitionReadFieldType; - id: string; - label: string; - organization_id: string; - required?: boolean; - ui_visibility: TaskCustomFieldDefinitionReadUiVisibility; updated_at: string; - validation_regex?: string | null; } diff --git a/frontend/src/api/generated/model/taskCustomFieldDefinitionUpdate.ts b/frontend/src/api/generated/model/taskCustomFieldDefinitionUpdate.ts index 7beeb437..68e28175 100644 --- a/frontend/src/api/generated/model/taskCustomFieldDefinitionUpdate.ts +++ b/frontend/src/api/generated/model/taskCustomFieldDefinitionUpdate.ts @@ -9,9 +9,7 @@ * Payload for editing an existing task custom field definition. */ export interface TaskCustomFieldDefinitionUpdate { - board_ids?: string[] | null; - default_value?: unknown | null; - description?: string | null; + label?: string | null; field_type?: | "text" | "text_long" @@ -23,8 +21,10 @@ export interface TaskCustomFieldDefinitionUpdate { | "url" | "json" | null; - label?: string | null; - required?: boolean | null; ui_visibility?: "always" | "if_set" | "hidden" | null; validation_regex?: string | null; + description?: string | null; + required?: boolean | null; + default_value?: unknown | null; + board_ids?: string[] | null; } diff --git a/frontend/src/api/generated/model/taskRead.ts b/frontend/src/api/generated/model/taskRead.ts index 5d874413..25c21d8a 100644 --- a/frontend/src/api/generated/model/taskRead.ts +++ b/frontend/src/api/generated/model/taskRead.ts @@ -12,22 +12,22 @@ import type { TaskReadStatus } from "./taskReadStatus"; * Task payload returned from read endpoints. */ export interface TaskRead { - assigned_agent_id?: string | null; - blocked_by_task_ids?: string[]; - board_id: string | null; - created_at: string; - created_by_user_id: string | null; - custom_field_values?: TaskReadCustomFieldValues; - depends_on_task_ids?: string[]; - description?: string | null; - due_at?: string | null; - id: string; - in_progress_at: string | null; - is_blocked?: boolean; - priority?: string; - status?: TaskReadStatus; - tag_ids?: string[]; - tags?: TagRef[]; title: string; + description?: string | null; + status?: TaskReadStatus; + priority?: string; + due_at?: string | null; + assigned_agent_id?: string | null; + depends_on_task_ids?: string[]; + tag_ids?: string[]; + id: string; + board_id: string | null; + created_by_user_id: string | null; + in_progress_at: string | null; + created_at: string; updated_at: string; + blocked_by_task_ids?: string[]; + is_blocked?: boolean; + tags?: TagRef[]; + custom_field_values?: TaskReadCustomFieldValues; } diff --git a/frontend/src/api/generated/model/taskUpdate.ts b/frontend/src/api/generated/model/taskUpdate.ts index ddaa9936..7476476f 100644 --- a/frontend/src/api/generated/model/taskUpdate.ts +++ b/frontend/src/api/generated/model/taskUpdate.ts @@ -10,14 +10,14 @@ import type { TaskUpdateCustomFieldValues } from "./taskUpdateCustomFieldValues" * Payload for partial task updates. */ export interface TaskUpdate { - assigned_agent_id?: string | null; - comment?: string | null; - custom_field_values?: TaskUpdateCustomFieldValues; - depends_on_task_ids?: string[] | null; - description?: string | null; - due_at?: string | null; - priority?: string | null; - status?: "inbox" | "in_progress" | "review" | "done" | null; - tag_ids?: string[] | null; 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; + depends_on_task_ids?: string[] | null; + tag_ids?: string[] | null; + custom_field_values?: TaskUpdateCustomFieldValues; + comment?: string | null; } diff --git a/frontend/src/api/generated/model/userRead.ts b/frontend/src/api/generated/model/userRead.ts index 6c345868..6082df94 100644 --- a/frontend/src/api/generated/model/userRead.ts +++ b/frontend/src/api/generated/model/userRead.ts @@ -9,14 +9,24 @@ * Full user payload returned by API responses. */ export interface UserRead { + /** External auth provider user identifier (Clerk). */ clerk_user_id: string; - context?: string | null; + /** Primary email address for the user. */ email?: string | null; - id: string; - is_super_admin: boolean; + /** Full display name. */ name?: string | null; - notes?: string | null; + /** Preferred short name used in UI. */ preferred_name?: string | null; + /** Preferred pronouns. */ pronouns?: string | null; + /** IANA timezone identifier. */ timezone?: string | null; + /** Internal notes for operators. */ + notes?: string | null; + /** Additional context used by the system for personalization. */ + context?: string | null; + /** Internal user UUID. */ + id: string; + /** Whether this user has tenant-wide super-admin privileges. */ + is_super_admin: boolean; } diff --git a/frontend/src/api/generated/model/userUpdate.ts b/frontend/src/api/generated/model/userUpdate.ts index cc9ab997..7e196385 100644 --- a/frontend/src/api/generated/model/userUpdate.ts +++ b/frontend/src/api/generated/model/userUpdate.ts @@ -9,10 +9,10 @@ * Payload for partial user profile updates. */ 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/model/validationError.ts b/frontend/src/api/generated/model/validationError.ts index b40de80c..1308b621 100644 --- a/frontend/src/api/generated/model/validationError.ts +++ b/frontend/src/api/generated/model/validationError.ts @@ -7,9 +7,9 @@ import type { ValidationErrorCtx } from "./validationErrorCtx"; export interface ValidationError { - ctx?: ValidationErrorCtx; - input?: unknown; loc: (string | number)[]; msg: string; type: string; + input?: unknown; + ctx?: ValidationErrorCtx; } diff --git a/frontend/src/api/generated/organizations/organizations.ts b/frontend/src/api/generated/organizations/organizations.ts index cb756331..f330f1c4 100644 --- a/frontend/src/api/generated/organizations/organizations.ts +++ b/frontend/src/api/generated/organizations/organizations.ts @@ -165,191 +165,276 @@ export const useCreateOrganizationApiV1OrganizationsPost = < ); }; /** - * Accept an invite and return resulting membership. - * @summary Accept Org Invite + * List organizations where the current user is a member. + * @summary List My Organizations */ -export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse200 = { - data: OrganizationMemberRead; +export type listMyOrganizationsApiV1OrganizationsMeListGetResponse200 = { + data: OrganizationListItem[]; status: 200; }; -export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseSuccess = - acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse200 & { - headers: Headers; - }; -export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseError = - acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse422 & { +export type listMyOrganizationsApiV1OrganizationsMeListGetResponseSuccess = + listMyOrganizationsApiV1OrganizationsMeListGetResponse200 & { headers: Headers; }; +export type listMyOrganizationsApiV1OrganizationsMeListGetResponse = + listMyOrganizationsApiV1OrganizationsMeListGetResponseSuccess; -export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse = - | acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseSuccess - | acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseError; - -export const getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostUrl = () => { - return `/api/v1/organizations/invites/accept`; +export const getListMyOrganizationsApiV1OrganizationsMeListGetUrl = () => { + return `/api/v1/organizations/me/list`; }; -export const acceptOrgInviteApiV1OrganizationsInvitesAcceptPost = async ( - organizationInviteAccept: OrganizationInviteAccept, +export const listMyOrganizationsApiV1OrganizationsMeListGet = async ( options?: RequestInit, -): Promise => { - return customFetch( - getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostUrl(), +): Promise => { + return customFetch( + getListMyOrganizationsApiV1OrganizationsMeListGetUrl(), { ...options, - method: "POST", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(organizationInviteAccept), + method: "GET", }, ); }; -export const getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationOptions = - (options?: { - mutation?: UseMutationOptions< +export const getListMyOrganizationsApiV1OrganizationsMeListGetQueryKey = () => { + return [`/api/v1/organizations/me/list`] as const; +}; + +export const getListMyOrganizationsApiV1OrganizationsMeListGetQueryOptions = < + TData = Awaited< + ReturnType + >, + TError = unknown, +>(options?: { + query?: Partial< + UseQueryOptions< Awaited< - ReturnType + ReturnType >, TError, - { data: OrganizationInviteAccept }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { data: OrganizationInviteAccept }, - TContext - > => { - const mutationKey = ["acceptOrgInviteApiV1OrganizationsInvitesAcceptPost"]; - 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: OrganizationInviteAccept } - > = (props) => { - const { data } = props ?? {}; - - return acceptOrgInviteApiV1OrganizationsInvitesAcceptPost( - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type AcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationResult = - NonNullable< - Awaited< - ReturnType + TData > >; -export type AcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationBody = - OrganizationInviteAccept; -export type AcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationError = - HTTPValidationError; + request?: SecondParameter; +}) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; -/** - * @summary Accept Org Invite - */ -export const useAcceptOrgInviteApiV1OrganizationsInvitesAcceptPost = < - TError = HTTPValidationError, - TContext = unknown, + const queryKey = + queryOptions?.queryKey ?? + getListMyOrganizationsApiV1OrganizationsMeListGetQueryKey(); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + listMyOrganizationsApiV1OrganizationsMeListGet({ + signal, + ...requestOptions, + }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type ListMyOrganizationsApiV1OrganizationsMeListGetQueryResult = + NonNullable< + Awaited> + >; +export type ListMyOrganizationsApiV1OrganizationsMeListGetQueryError = unknown; + +export function useListMyOrganizationsApiV1OrganizationsMeListGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + 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 useListMyOrganizationsApiV1OrganizationsMeListGet< + TData = Awaited< + ReturnType + >, + TError = unknown, >( options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType - >, - TError, - { data: OrganizationInviteAccept }, - TContext + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited< + ReturnType + >, + TError, + Awaited< + ReturnType + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useListMyOrganizationsApiV1OrganizationsMeListGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > >; request?: SecondParameter; }, queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { data: OrganizationInviteAccept }, - TContext -> => { - return useMutation( - getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationOptions( - options, - ), - queryClient, - ); +): UseQueryResult & { + queryKey: DataTag; }; /** - * Delete the active organization and related entities. - * @summary Delete My Org + * @summary List My Organizations */ -export type deleteMyOrgApiV1OrganizationsMeDeleteResponse200 = { - data: OkResponse; + +export function useListMyOrganizationsApiV1OrganizationsMeListGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getListMyOrganizationsApiV1OrganizationsMeListGetQueryOptions(options); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * Set the caller's active organization. + * @summary Set Active Org + */ +export type setActiveOrgApiV1OrganizationsMeActivePatchResponse200 = { + data: OrganizationRead; status: 200; }; -export type deleteMyOrgApiV1OrganizationsMeDeleteResponseSuccess = - deleteMyOrgApiV1OrganizationsMeDeleteResponse200 & { - headers: Headers; - }; -export type deleteMyOrgApiV1OrganizationsMeDeleteResponse = - deleteMyOrgApiV1OrganizationsMeDeleteResponseSuccess; - -export const getDeleteMyOrgApiV1OrganizationsMeDeleteUrl = () => { - return `/api/v1/organizations/me`; +export type setActiveOrgApiV1OrganizationsMeActivePatchResponse422 = { + data: HTTPValidationError; + status: 422; }; -export const deleteMyOrgApiV1OrganizationsMeDelete = async ( +export type setActiveOrgApiV1OrganizationsMeActivePatchResponseSuccess = + setActiveOrgApiV1OrganizationsMeActivePatchResponse200 & { + headers: Headers; + }; +export type setActiveOrgApiV1OrganizationsMeActivePatchResponseError = + setActiveOrgApiV1OrganizationsMeActivePatchResponse422 & { + headers: Headers; + }; + +export type setActiveOrgApiV1OrganizationsMeActivePatchResponse = + | setActiveOrgApiV1OrganizationsMeActivePatchResponseSuccess + | setActiveOrgApiV1OrganizationsMeActivePatchResponseError; + +export const getSetActiveOrgApiV1OrganizationsMeActivePatchUrl = () => { + return `/api/v1/organizations/me/active`; +}; + +export const setActiveOrgApiV1OrganizationsMeActivePatch = async ( + organizationActiveUpdate: OrganizationActiveUpdate, options?: RequestInit, -): Promise => { - return customFetch( - getDeleteMyOrgApiV1OrganizationsMeDeleteUrl(), +): Promise => { + return customFetch( + getSetActiveOrgApiV1OrganizationsMeActivePatchUrl(), { ...options, - method: "DELETE", + method: "PATCH", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(organizationActiveUpdate), }, ); }; -export const getDeleteMyOrgApiV1OrganizationsMeDeleteMutationOptions = < - TError = unknown, +export const getSetActiveOrgApiV1OrganizationsMeActivePatchMutationOptions = < + TError = HTTPValidationError, TContext = unknown, >(options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - void, + { data: OrganizationActiveUpdate }, TContext >; request?: SecondParameter; }): UseMutationOptions< - Awaited>, + Awaited>, TError, - void, + { data: OrganizationActiveUpdate }, TContext > => { - const mutationKey = ["deleteMyOrgApiV1OrganizationsMeDelete"]; + const mutationKey = ["setActiveOrgApiV1OrganizationsMeActivePatch"]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && "mutationKey" in options.mutation && @@ -359,46 +444,51 @@ export const getDeleteMyOrgApiV1OrganizationsMeDeleteMutationOptions = < : { mutation: { mutationKey }, request: undefined }; const mutationFn: MutationFunction< - Awaited>, - void - > = () => { - return deleteMyOrgApiV1OrganizationsMeDelete(requestOptions); + Awaited>, + { data: OrganizationActiveUpdate } + > = (props) => { + const { data } = props ?? {}; + + return setActiveOrgApiV1OrganizationsMeActivePatch(data, requestOptions); }; return { mutationFn, ...mutationOptions }; }; -export type DeleteMyOrgApiV1OrganizationsMeDeleteMutationResult = NonNullable< - Awaited> ->; - -export type DeleteMyOrgApiV1OrganizationsMeDeleteMutationError = unknown; +export type SetActiveOrgApiV1OrganizationsMeActivePatchMutationResult = + NonNullable< + Awaited> + >; +export type SetActiveOrgApiV1OrganizationsMeActivePatchMutationBody = + OrganizationActiveUpdate; +export type SetActiveOrgApiV1OrganizationsMeActivePatchMutationError = + HTTPValidationError; /** - * @summary Delete My Org + * @summary Set Active Org */ -export const useDeleteMyOrgApiV1OrganizationsMeDelete = < - TError = unknown, +export const useSetActiveOrgApiV1OrganizationsMeActivePatch = < + TError = HTTPValidationError, TContext = unknown, >( options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - void, + { data: OrganizationActiveUpdate }, TContext >; request?: SecondParameter; }, queryClient?: QueryClient, ): UseMutationResult< - Awaited>, + Awaited>, TError, - void, + { data: OrganizationActiveUpdate }, TContext > => { return useMutation( - getDeleteMyOrgApiV1OrganizationsMeDeleteMutationOptions(options), + getSetActiveOrgApiV1OrganizationsMeActivePatchMutationOptions(options), queryClient, ); }; @@ -576,69 +666,55 @@ export function useGetMyOrgApiV1OrganizationsMeGet< } /** - * Set the caller's active organization. - * @summary Set Active Org + * Delete the active organization and related entities. + * @summary Delete My Org */ -export type setActiveOrgApiV1OrganizationsMeActivePatchResponse200 = { - data: OrganizationRead; +export type deleteMyOrgApiV1OrganizationsMeDeleteResponse200 = { + data: OkResponse; status: 200; }; -export type setActiveOrgApiV1OrganizationsMeActivePatchResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type setActiveOrgApiV1OrganizationsMeActivePatchResponseSuccess = - setActiveOrgApiV1OrganizationsMeActivePatchResponse200 & { - headers: Headers; - }; -export type setActiveOrgApiV1OrganizationsMeActivePatchResponseError = - setActiveOrgApiV1OrganizationsMeActivePatchResponse422 & { +export type deleteMyOrgApiV1OrganizationsMeDeleteResponseSuccess = + deleteMyOrgApiV1OrganizationsMeDeleteResponse200 & { headers: Headers; }; +export type deleteMyOrgApiV1OrganizationsMeDeleteResponse = + deleteMyOrgApiV1OrganizationsMeDeleteResponseSuccess; -export type setActiveOrgApiV1OrganizationsMeActivePatchResponse = - | setActiveOrgApiV1OrganizationsMeActivePatchResponseSuccess - | setActiveOrgApiV1OrganizationsMeActivePatchResponseError; - -export const getSetActiveOrgApiV1OrganizationsMeActivePatchUrl = () => { - return `/api/v1/organizations/me/active`; +export const getDeleteMyOrgApiV1OrganizationsMeDeleteUrl = () => { + return `/api/v1/organizations/me`; }; -export const setActiveOrgApiV1OrganizationsMeActivePatch = async ( - organizationActiveUpdate: OrganizationActiveUpdate, +export const deleteMyOrgApiV1OrganizationsMeDelete = async ( options?: RequestInit, -): Promise => { - return customFetch( - getSetActiveOrgApiV1OrganizationsMeActivePatchUrl(), +): Promise => { + return customFetch( + getDeleteMyOrgApiV1OrganizationsMeDeleteUrl(), { ...options, - method: "PATCH", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(organizationActiveUpdate), + method: "DELETE", }, ); }; -export const getSetActiveOrgApiV1OrganizationsMeActivePatchMutationOptions = < - TError = HTTPValidationError, +export const getDeleteMyOrgApiV1OrganizationsMeDeleteMutationOptions = < + TError = unknown, TContext = unknown, >(options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - { data: OrganizationActiveUpdate }, + void, TContext >; request?: SecondParameter; }): UseMutationOptions< - Awaited>, + Awaited>, TError, - { data: OrganizationActiveUpdate }, + void, TContext > => { - const mutationKey = ["setActiveOrgApiV1OrganizationsMeActivePatch"]; + const mutationKey = ["deleteMyOrgApiV1OrganizationsMeDelete"]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && "mutationKey" in options.mutation && @@ -648,54 +724,1212 @@ export const getSetActiveOrgApiV1OrganizationsMeActivePatchMutationOptions = < : { mutation: { mutationKey }, request: undefined }; const mutationFn: MutationFunction< - Awaited>, - { data: OrganizationActiveUpdate } - > = (props) => { - const { data } = props ?? {}; - - return setActiveOrgApiV1OrganizationsMeActivePatch(data, requestOptions); + Awaited>, + void + > = () => { + return deleteMyOrgApiV1OrganizationsMeDelete(requestOptions); }; return { mutationFn, ...mutationOptions }; }; -export type SetActiveOrgApiV1OrganizationsMeActivePatchMutationResult = - NonNullable< - Awaited> - >; -export type SetActiveOrgApiV1OrganizationsMeActivePatchMutationBody = - OrganizationActiveUpdate; -export type SetActiveOrgApiV1OrganizationsMeActivePatchMutationError = - HTTPValidationError; +export type DeleteMyOrgApiV1OrganizationsMeDeleteMutationResult = NonNullable< + Awaited> +>; + +export type DeleteMyOrgApiV1OrganizationsMeDeleteMutationError = unknown; /** - * @summary Set Active Org + * @summary Delete My Org */ -export const useSetActiveOrgApiV1OrganizationsMeActivePatch = < - TError = HTTPValidationError, +export const useDeleteMyOrgApiV1OrganizationsMeDelete = < + TError = unknown, TContext = unknown, >( options?: { mutation?: UseMutationOptions< - Awaited>, + Awaited>, TError, - { data: OrganizationActiveUpdate }, + void, TContext >; request?: SecondParameter; }, queryClient?: QueryClient, ): UseMutationResult< - Awaited>, + Awaited>, TError, - { data: OrganizationActiveUpdate }, + void, TContext > => { return useMutation( - getSetActiveOrgApiV1OrganizationsMeActivePatchMutationOptions(options), + getDeleteMyOrgApiV1OrganizationsMeDeleteMutationOptions(options), queryClient, ); }; +/** + * Get the caller's membership record in the active organization. + * @summary Get My Membership + */ +export type getMyMembershipApiV1OrganizationsMeMemberGetResponse200 = { + data: OrganizationMemberRead; + status: 200; +}; + +export type getMyMembershipApiV1OrganizationsMeMemberGetResponseSuccess = + getMyMembershipApiV1OrganizationsMeMemberGetResponse200 & { + headers: Headers; + }; +export type getMyMembershipApiV1OrganizationsMeMemberGetResponse = + getMyMembershipApiV1OrganizationsMeMemberGetResponseSuccess; + +export const getGetMyMembershipApiV1OrganizationsMeMemberGetUrl = () => { + return `/api/v1/organizations/me/member`; +}; + +export const getMyMembershipApiV1OrganizationsMeMemberGet = async ( + options?: RequestInit, +): Promise => { + return customFetch( + getGetMyMembershipApiV1OrganizationsMeMemberGetUrl(), + { + ...options, + method: "GET", + }, + ); +}; + +export const getGetMyMembershipApiV1OrganizationsMeMemberGetQueryKey = () => { + return [`/api/v1/organizations/me/member`] as const; +}; + +export const getGetMyMembershipApiV1OrganizationsMeMemberGetQueryOptions = < + TData = Awaited< + ReturnType + >, + TError = unknown, +>(options?: { + query?: Partial< + UseQueryOptions< + Awaited>, + TError, + TData + > + >; + request?: SecondParameter; +}) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getGetMyMembershipApiV1OrganizationsMeMemberGetQueryKey(); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + getMyMembershipApiV1OrganizationsMeMemberGet({ signal, ...requestOptions }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type GetMyMembershipApiV1OrganizationsMeMemberGetQueryResult = + NonNullable< + Awaited> + >; +export type GetMyMembershipApiV1OrganizationsMeMemberGetQueryError = unknown; + +export function useGetMyMembershipApiV1OrganizationsMeMemberGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + 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 useGetMyMembershipApiV1OrganizationsMeMemberGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + 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 useGetMyMembershipApiV1OrganizationsMeMemberGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Get My Membership + */ + +export function useGetMyMembershipApiV1OrganizationsMeMemberGet< + TData = Awaited< + ReturnType + >, + TError = unknown, +>( + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getGetMyMembershipApiV1OrganizationsMeMemberGetQueryOptions(options); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * List members for the active organization. + * @summary List Org Members + */ +export type listOrgMembersApiV1OrganizationsMeMembersGetResponse200 = { + data: LimitOffsetPageTypeVarCustomizedOrganizationMemberRead; + status: 200; +}; + +export type listOrgMembersApiV1OrganizationsMeMembersGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type listOrgMembersApiV1OrganizationsMeMembersGetResponseSuccess = + listOrgMembersApiV1OrganizationsMeMembersGetResponse200 & { + headers: Headers; + }; +export type listOrgMembersApiV1OrganizationsMeMembersGetResponseError = + listOrgMembersApiV1OrganizationsMeMembersGetResponse422 & { + headers: Headers; + }; + +export type listOrgMembersApiV1OrganizationsMeMembersGetResponse = + | listOrgMembersApiV1OrganizationsMeMembersGetResponseSuccess + | listOrgMembersApiV1OrganizationsMeMembersGetResponseError; + +export const getListOrgMembersApiV1OrganizationsMeMembersGetUrl = ( + params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, +) => { + 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/organizations/me/members?${stringifiedParams}` + : `/api/v1/organizations/me/members`; +}; + +export const listOrgMembersApiV1OrganizationsMeMembersGet = async ( + params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, + options?: RequestInit, +): Promise => { + return customFetch( + getListOrgMembersApiV1OrganizationsMeMembersGetUrl(params), + { + ...options, + method: "GET", + }, + ); +}; + +export const getListOrgMembersApiV1OrganizationsMeMembersGetQueryKey = ( + params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, +) => { + return [ + `/api/v1/organizations/me/members`, + ...(params ? [params] : []), + ] as const; +}; + +export const getListOrgMembersApiV1OrganizationsMeMembersGetQueryOptions = < + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, +) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getListOrgMembersApiV1OrganizationsMeMembersGetQueryKey(params); + + const queryFn: QueryFunction< + Awaited> + > = ({ signal }) => + listOrgMembersApiV1OrganizationsMeMembersGet(params, { + signal, + ...requestOptions, + }); + + return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< + Awaited>, + TError, + TData + > & { queryKey: DataTag }; +}; + +export type ListOrgMembersApiV1OrganizationsMeMembersGetQueryResult = + NonNullable< + Awaited> + >; +export type ListOrgMembersApiV1OrganizationsMeMembersGetQueryError = + HTTPValidationError; + +export function useListOrgMembersApiV1OrganizationsMeMembersGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + params: undefined | ListOrgMembersApiV1OrganizationsMeMembersGetParams, + 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 useListOrgMembersApiV1OrganizationsMeMembersGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, + 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 useListOrgMembersApiV1OrganizationsMeMembersGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary List Org Members + */ + +export function useListOrgMembersApiV1OrganizationsMeMembersGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getListOrgMembersApiV1OrganizationsMeMembersGetQueryOptions( + params, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * Get a specific organization member by id. + * @summary Get Org Member + */ +export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse200 = { + data: OrganizationMemberRead; + status: 200; +}; + +export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseSuccess = + getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse200 & { + headers: Headers; + }; +export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseError = + getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse422 & { + headers: Headers; + }; + +export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse = + | getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseSuccess + | getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseError; + +export const getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetUrl = ( + memberId: string, +) => { + return `/api/v1/organizations/me/members/${memberId}`; +}; + +export const getOrgMemberApiV1OrganizationsMeMembersMemberIdGet = async ( + memberId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetUrl(memberId), + { + ...options, + method: "GET", + }, + ); +}; + +export const getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryKey = ( + memberId: string, +) => { + return [`/api/v1/organizations/me/members/${memberId}`] as const; +}; + +export const getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryOptions = + < + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, + >( + memberId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType< + typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet + > + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + ) => { + const { query: queryOptions, request: requestOptions } = options ?? {}; + + const queryKey = + queryOptions?.queryKey ?? + getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryKey(memberId); + + const queryFn: QueryFunction< + Awaited< + ReturnType + > + > = ({ signal }) => + getOrgMemberApiV1OrganizationsMeMembersMemberIdGet(memberId, { + signal, + ...requestOptions, + }); + + return { + queryKey, + queryFn, + enabled: !!memberId, + ...queryOptions, + } as UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > & { queryKey: DataTag }; + }; + +export type GetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type GetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryError = + HTTPValidationError; + +export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + memberId: string, + options: { + query: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + > & + Pick< + DefinedInitialDataOptions< + Awaited< + ReturnType< + typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet + > + >, + TError, + Awaited< + ReturnType< + typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet + > + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): DefinedUseQueryResult & { + queryKey: DataTag; +}; +export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + memberId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + > & + Pick< + UndefinedInitialDataOptions< + Awaited< + ReturnType< + typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet + > + >, + TError, + Awaited< + ReturnType< + typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet + > + > + >, + "initialData" + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + memberId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +}; +/** + * @summary Get Org Member + */ + +export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< + TData = Awaited< + ReturnType + >, + TError = HTTPValidationError, +>( + memberId: string, + options?: { + query?: Partial< + UseQueryOptions< + Awaited< + ReturnType + >, + TError, + TData + > + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseQueryResult & { + queryKey: DataTag; +} { + const queryOptions = + getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryOptions( + memberId, + options, + ); + + const query = useQuery(queryOptions, queryClient) as UseQueryResult< + TData, + TError + > & { queryKey: DataTag }; + + return { ...query, queryKey: queryOptions.queryKey }; +} + +/** + * Update a member's role in the organization. + * @summary Update Org Member + */ +export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse200 = + { + data: OrganizationMemberRead; + status: 200; + }; + +export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseSuccess = + updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse200 & { + headers: Headers; + }; +export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseError = + updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse422 & { + headers: Headers; + }; + +export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse = + | updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseSuccess + | updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseError; + +export const getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchUrl = ( + memberId: string, +) => { + return `/api/v1/organizations/me/members/${memberId}`; +}; + +export const updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch = async ( + memberId: string, + organizationMemberUpdate: OrganizationMemberUpdate, + options?: RequestInit, +): Promise => { + return customFetch( + getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchUrl(memberId), + { + ...options, + method: "PATCH", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(organizationMemberUpdate), + }, + ); +}; + +export const getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch + > + >, + TError, + { memberId: string; data: OrganizationMemberUpdate }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType + >, + TError, + { memberId: string; data: OrganizationMemberUpdate }, + TContext + > => { + const mutationKey = [ + "updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch", + ]; + 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 updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch + > + >, + { memberId: string; data: OrganizationMemberUpdate } + > = (props) => { + const { memberId, data } = props ?? {}; + + return updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch( + memberId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type UpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationResult = + NonNullable< + Awaited< + ReturnType + > + >; +export type UpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationBody = + OrganizationMemberUpdate; +export type UpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationError = + HTTPValidationError; + +/** + * @summary Update Org Member + */ +export const useUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch + > + >, + TError, + { memberId: string; data: OrganizationMemberUpdate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { memberId: string; data: OrganizationMemberUpdate }, + TContext +> => { + return useMutation( + getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationOptions( + options, + ), + queryClient, + ); +}; +/** + * Remove a member from the active organization. + * @summary Remove Org Member + */ +export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse200 = + { + data: OkResponse; + status: 200; + }; + +export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseSuccess = + removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse200 & { + headers: Headers; + }; +export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseError = + removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse422 & { + headers: Headers; + }; + +export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse = + | removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseSuccess + | removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseError; + +export const getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteUrl = ( + memberId: string, +) => { + return `/api/v1/organizations/me/members/${memberId}`; +}; + +export const removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete = async ( + memberId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteUrl(memberId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete + > + >, + TError, + { memberId: string }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType< + typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete + > + >, + TError, + { memberId: string }, + TContext + > => { + const mutationKey = [ + "removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete", + ]; + 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 removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete + > + >, + { memberId: string } + > = (props) => { + const { memberId } = props ?? {}; + + return removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete( + memberId, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type RemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationResult = + NonNullable< + Awaited< + ReturnType< + typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete + > + > + >; + +export type RemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Remove Org Member + */ +export const useRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete + > + >, + TError, + { memberId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited< + ReturnType + >, + TError, + { memberId: string }, + TContext +> => { + return useMutation( + getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationOptions( + options, + ), + queryClient, + ); +}; +/** + * Update board-level access settings for a member. + * @summary Update Member Access + */ +export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse200 = + { + data: OrganizationMemberRead; + status: 200; + }; + +export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse422 = + { + data: HTTPValidationError; + status: 422; + }; + +export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseSuccess = + updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse200 & { + headers: Headers; + }; +export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseError = + updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse422 & { + headers: Headers; + }; + +export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse = + + | updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseSuccess + | updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseError; + +export const getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutUrl = + (memberId: string) => { + return `/api/v1/organizations/me/members/${memberId}/access`; + }; + +export const updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut = + async ( + memberId: string, + organizationMemberAccessUpdate: OrganizationMemberAccessUpdate, + options?: RequestInit, + ): Promise => { + return customFetch( + getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutUrl( + memberId, + ), + { + ...options, + method: "PUT", + headers: { "Content-Type": "application/json", ...options?.headers }, + body: JSON.stringify(organizationMemberAccessUpdate), + }, + ); + }; + +export const getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationOptions = + (options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut + > + >, + TError, + { memberId: string; data: OrganizationMemberAccessUpdate }, + TContext + >; + request?: SecondParameter; + }): UseMutationOptions< + Awaited< + ReturnType< + typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut + > + >, + TError, + { memberId: string; data: OrganizationMemberAccessUpdate }, + TContext + > => { + const mutationKey = [ + "updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut", + ]; + 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 updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut + > + >, + { memberId: string; data: OrganizationMemberAccessUpdate } + > = (props) => { + const { memberId, data } = props ?? {}; + + return updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut( + memberId, + data, + requestOptions, + ); + }; + + return { mutationFn, ...mutationOptions }; + }; + +export type UpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationResult = + NonNullable< + Awaited< + ReturnType< + typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut + > + > + >; +export type UpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationBody = + OrganizationMemberAccessUpdate; +export type UpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationError = + HTTPValidationError; + +/** + * @summary Update Member Access + */ +export const useUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut = + ( + options?: { + mutation?: UseMutationOptions< + Awaited< + ReturnType< + typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut + > + >, + TError, + { memberId: string; data: OrganizationMemberAccessUpdate }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, + ): UseMutationResult< + Awaited< + ReturnType< + typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut + > + >, + TError, + { memberId: string; data: OrganizationMemberAccessUpdate }, + TContext + > => { + return useMutation( + getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationOptions( + options, + ), + queryClient, + ); + }; /** * List pending invites for the active organization. * @summary List Org Invites @@ -1223,1143 +2457,71 @@ export const useRevokeOrgInviteApiV1OrganizationsMeInvitesInviteIdDelete = < ); }; /** - * List organizations where the current user is a member. - * @summary List My Organizations + * Accept an invite and return resulting membership. + * @summary Accept Org Invite */ -export type listMyOrganizationsApiV1OrganizationsMeListGetResponse200 = { - data: OrganizationListItem[]; - status: 200; -}; - -export type listMyOrganizationsApiV1OrganizationsMeListGetResponseSuccess = - listMyOrganizationsApiV1OrganizationsMeListGetResponse200 & { - headers: Headers; - }; -export type listMyOrganizationsApiV1OrganizationsMeListGetResponse = - listMyOrganizationsApiV1OrganizationsMeListGetResponseSuccess; - -export const getListMyOrganizationsApiV1OrganizationsMeListGetUrl = () => { - return `/api/v1/organizations/me/list`; -}; - -export const listMyOrganizationsApiV1OrganizationsMeListGet = async ( - options?: RequestInit, -): Promise => { - return customFetch( - getListMyOrganizationsApiV1OrganizationsMeListGetUrl(), - { - ...options, - method: "GET", - }, - ); -}; - -export const getListMyOrganizationsApiV1OrganizationsMeListGetQueryKey = () => { - return [`/api/v1/organizations/me/list`] as const; -}; - -export const getListMyOrganizationsApiV1OrganizationsMeListGetQueryOptions = < - TData = Awaited< - ReturnType - >, - TError = unknown, ->(options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; -}) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getListMyOrganizationsApiV1OrganizationsMeListGetQueryKey(); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - listMyOrganizationsApiV1OrganizationsMeListGet({ - signal, - ...requestOptions, - }); - - return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type ListMyOrganizationsApiV1OrganizationsMeListGetQueryResult = - NonNullable< - Awaited> - >; -export type ListMyOrganizationsApiV1OrganizationsMeListGetQueryError = unknown; - -export function useListMyOrganizationsApiV1OrganizationsMeListGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - 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 useListMyOrganizationsApiV1OrganizationsMeListGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - 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 useListMyOrganizationsApiV1OrganizationsMeListGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary List My Organizations - */ - -export function useListMyOrganizationsApiV1OrganizationsMeListGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getListMyOrganizationsApiV1OrganizationsMeListGetQueryOptions(options); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * Get the caller's membership record in the active organization. - * @summary Get My Membership - */ -export type getMyMembershipApiV1OrganizationsMeMemberGetResponse200 = { +export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse200 = { data: OrganizationMemberRead; status: 200; }; -export type getMyMembershipApiV1OrganizationsMeMemberGetResponseSuccess = - getMyMembershipApiV1OrganizationsMeMemberGetResponse200 & { - headers: Headers; - }; -export type getMyMembershipApiV1OrganizationsMeMemberGetResponse = - getMyMembershipApiV1OrganizationsMeMemberGetResponseSuccess; - -export const getGetMyMembershipApiV1OrganizationsMeMemberGetUrl = () => { - return `/api/v1/organizations/me/member`; -}; - -export const getMyMembershipApiV1OrganizationsMeMemberGet = async ( - options?: RequestInit, -): Promise => { - return customFetch( - getGetMyMembershipApiV1OrganizationsMeMemberGetUrl(), - { - ...options, - method: "GET", - }, - ); -}; - -export const getGetMyMembershipApiV1OrganizationsMeMemberGetQueryKey = () => { - return [`/api/v1/organizations/me/member`] as const; -}; - -export const getGetMyMembershipApiV1OrganizationsMeMemberGetQueryOptions = < - TData = Awaited< - ReturnType - >, - TError = unknown, ->(options?: { - query?: Partial< - UseQueryOptions< - Awaited>, - TError, - TData - > - >; - request?: SecondParameter; -}) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getGetMyMembershipApiV1OrganizationsMeMemberGetQueryKey(); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - getMyMembershipApiV1OrganizationsMeMemberGet({ signal, ...requestOptions }); - - return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type GetMyMembershipApiV1OrganizationsMeMemberGetQueryResult = - NonNullable< - Awaited> - >; -export type GetMyMembershipApiV1OrganizationsMeMemberGetQueryError = unknown; - -export function useGetMyMembershipApiV1OrganizationsMeMemberGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - 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 useGetMyMembershipApiV1OrganizationsMeMemberGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - 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 useGetMyMembershipApiV1OrganizationsMeMemberGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary Get My Membership - */ - -export function useGetMyMembershipApiV1OrganizationsMeMemberGet< - TData = Awaited< - ReturnType - >, - TError = unknown, ->( - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getGetMyMembershipApiV1OrganizationsMeMemberGetQueryOptions(options); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * List members for the active organization. - * @summary List Org Members - */ -export type listOrgMembersApiV1OrganizationsMeMembersGetResponse200 = { - data: LimitOffsetPageTypeVarCustomizedOrganizationMemberRead; - status: 200; -}; - -export type listOrgMembersApiV1OrganizationsMeMembersGetResponse422 = { +export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse422 = { data: HTTPValidationError; status: 422; }; -export type listOrgMembersApiV1OrganizationsMeMembersGetResponseSuccess = - listOrgMembersApiV1OrganizationsMeMembersGetResponse200 & { +export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseSuccess = + acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse200 & { headers: Headers; }; -export type listOrgMembersApiV1OrganizationsMeMembersGetResponseError = - listOrgMembersApiV1OrganizationsMeMembersGetResponse422 & { +export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseError = + acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse422 & { headers: Headers; }; -export type listOrgMembersApiV1OrganizationsMeMembersGetResponse = - | listOrgMembersApiV1OrganizationsMeMembersGetResponseSuccess - | listOrgMembersApiV1OrganizationsMeMembersGetResponseError; +export type acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponse = + | acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseSuccess + | acceptOrgInviteApiV1OrganizationsInvitesAcceptPostResponseError; -export const getListOrgMembersApiV1OrganizationsMeMembersGetUrl = ( - params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, -) => { - 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/organizations/me/members?${stringifiedParams}` - : `/api/v1/organizations/me/members`; +export const getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostUrl = () => { + return `/api/v1/organizations/invites/accept`; }; -export const listOrgMembersApiV1OrganizationsMeMembersGet = async ( - params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, +export const acceptOrgInviteApiV1OrganizationsInvitesAcceptPost = async ( + organizationInviteAccept: OrganizationInviteAccept, options?: RequestInit, -): Promise => { - return customFetch( - getListOrgMembersApiV1OrganizationsMeMembersGetUrl(params), +): Promise => { + return customFetch( + getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostUrl(), { ...options, - method: "GET", - }, - ); -}; - -export const getListOrgMembersApiV1OrganizationsMeMembersGetQueryKey = ( - params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, -) => { - return [ - `/api/v1/organizations/me/members`, - ...(params ? [params] : []), - ] as const; -}; - -export const getListOrgMembersApiV1OrganizationsMeMembersGetQueryOptions = < - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, -) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getListOrgMembersApiV1OrganizationsMeMembersGetQueryKey(params); - - const queryFn: QueryFunction< - Awaited> - > = ({ signal }) => - listOrgMembersApiV1OrganizationsMeMembersGet(params, { - signal, - ...requestOptions, - }); - - return { queryKey, queryFn, ...queryOptions } as UseQueryOptions< - Awaited>, - TError, - TData - > & { queryKey: DataTag }; -}; - -export type ListOrgMembersApiV1OrganizationsMeMembersGetQueryResult = - NonNullable< - Awaited> - >; -export type ListOrgMembersApiV1OrganizationsMeMembersGetQueryError = - HTTPValidationError; - -export function useListOrgMembersApiV1OrganizationsMeMembersGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - params: undefined | ListOrgMembersApiV1OrganizationsMeMembersGetParams, - 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 useListOrgMembersApiV1OrganizationsMeMembersGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, - 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 useListOrgMembersApiV1OrganizationsMeMembersGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary List Org Members - */ - -export function useListOrgMembersApiV1OrganizationsMeMembersGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - params?: ListOrgMembersApiV1OrganizationsMeMembersGetParams, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getListOrgMembersApiV1OrganizationsMeMembersGetQueryOptions( - params, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * Remove a member from the active organization. - * @summary Remove Org Member - */ -export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse200 = - { - data: OkResponse; - status: 200; - }; - -export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseSuccess = - removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse200 & { - headers: Headers; - }; -export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseError = - removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse422 & { - headers: Headers; - }; - -export type removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponse = - | removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseSuccess - | removeOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteResponseError; - -export const getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteUrl = ( - memberId: string, -) => { - return `/api/v1/organizations/me/members/${memberId}`; -}; - -export const removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete = async ( - memberId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteUrl(memberId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete - > - >, - TError, - { memberId: string }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType< - typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete - > - >, - TError, - { memberId: string }, - TContext - > => { - const mutationKey = [ - "removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete", - ]; - 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 removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete - > - >, - { memberId: string } - > = (props) => { - const { memberId } = props ?? {}; - - return removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete( - memberId, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type RemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationResult = - NonNullable< - Awaited< - ReturnType< - typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete - > - > - >; - -export type RemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Remove Org Member - */ -export const useRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof removeOrgMemberApiV1OrganizationsMeMembersMemberIdDelete - > - >, - TError, - { memberId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited< - ReturnType - >, - TError, - { memberId: string }, - TContext -> => { - return useMutation( - getRemoveOrgMemberApiV1OrganizationsMeMembersMemberIdDeleteMutationOptions( - options, - ), - queryClient, - ); -}; -/** - * Get a specific organization member by id. - * @summary Get Org Member - */ -export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse200 = { - data: OrganizationMemberRead; - status: 200; -}; - -export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseSuccess = - getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse200 & { - headers: Headers; - }; -export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseError = - getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse422 & { - headers: Headers; - }; - -export type getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponse = - | getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseSuccess - | getOrgMemberApiV1OrganizationsMeMembersMemberIdGetResponseError; - -export const getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetUrl = ( - memberId: string, -) => { - return `/api/v1/organizations/me/members/${memberId}`; -}; - -export const getOrgMemberApiV1OrganizationsMeMembersMemberIdGet = async ( - memberId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetUrl(memberId), - { - ...options, - method: "GET", - }, - ); -}; - -export const getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryKey = ( - memberId: string, -) => { - return [`/api/v1/organizations/me/members/${memberId}`] as const; -}; - -export const getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryOptions = - < - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, - >( - memberId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType< - typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet - > - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - ) => { - const { query: queryOptions, request: requestOptions } = options ?? {}; - - const queryKey = - queryOptions?.queryKey ?? - getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryKey(memberId); - - const queryFn: QueryFunction< - Awaited< - ReturnType - > - > = ({ signal }) => - getOrgMemberApiV1OrganizationsMeMembersMemberIdGet(memberId, { - signal, - ...requestOptions, - }); - - return { - queryKey, - queryFn, - enabled: !!memberId, - ...queryOptions, - } as UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > & { queryKey: DataTag }; - }; - -export type GetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryResult = - NonNullable< - Awaited< - ReturnType - > - >; -export type GetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryError = - HTTPValidationError; - -export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - memberId: string, - options: { - query: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - > & - Pick< - DefinedInitialDataOptions< - Awaited< - ReturnType< - typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet - > - >, - TError, - Awaited< - ReturnType< - typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet - > - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): DefinedUseQueryResult & { - queryKey: DataTag; -}; -export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - memberId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - > & - Pick< - UndefinedInitialDataOptions< - Awaited< - ReturnType< - typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet - > - >, - TError, - Awaited< - ReturnType< - typeof getOrgMemberApiV1OrganizationsMeMembersMemberIdGet - > - > - >, - "initialData" - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - memberId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -}; -/** - * @summary Get Org Member - */ - -export function useGetOrgMemberApiV1OrganizationsMeMembersMemberIdGet< - TData = Awaited< - ReturnType - >, - TError = HTTPValidationError, ->( - memberId: string, - options?: { - query?: Partial< - UseQueryOptions< - Awaited< - ReturnType - >, - TError, - TData - > - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseQueryResult & { - queryKey: DataTag; -} { - const queryOptions = - getGetOrgMemberApiV1OrganizationsMeMembersMemberIdGetQueryOptions( - memberId, - options, - ); - - const query = useQuery(queryOptions, queryClient) as UseQueryResult< - TData, - TError - > & { queryKey: DataTag }; - - return { ...query, queryKey: queryOptions.queryKey }; -} - -/** - * Update a member's role in the organization. - * @summary Update Org Member - */ -export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse200 = - { - data: OrganizationMemberRead; - status: 200; - }; - -export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseSuccess = - updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse200 & { - headers: Headers; - }; -export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseError = - updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse422 & { - headers: Headers; - }; - -export type updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponse = - | updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseSuccess - | updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchResponseError; - -export const getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchUrl = ( - memberId: string, -) => { - return `/api/v1/organizations/me/members/${memberId}`; -}; - -export const updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch = async ( - memberId: string, - organizationMemberUpdate: OrganizationMemberUpdate, - options?: RequestInit, -): Promise => { - return customFetch( - getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchUrl(memberId), - { - ...options, - method: "PATCH", + method: "POST", headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(organizationMemberUpdate), + body: JSON.stringify(organizationInviteAccept), }, ); }; -export const getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationOptions = +export const getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationOptions = (options?: { mutation?: UseMutationOptions< Awaited< - ReturnType< - typeof updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch - > + ReturnType >, TError, - { memberId: string; data: OrganizationMemberUpdate }, + { data: OrganizationInviteAccept }, TContext >; request?: SecondParameter; }): UseMutationOptions< Awaited< - ReturnType + ReturnType >, TError, - { memberId: string; data: OrganizationMemberUpdate }, + { data: OrganizationInviteAccept }, TContext > => { - const mutationKey = [ - "updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch", - ]; + const mutationKey = ["acceptOrgInviteApiV1OrganizationsInvitesAcceptPost"]; const { mutation: mutationOptions, request: requestOptions } = options ? options.mutation && "mutationKey" in options.mutation && @@ -2370,16 +2532,13 @@ export const getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationO const mutationFn: MutationFunction< Awaited< - ReturnType< - typeof updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch - > + ReturnType >, - { memberId: string; data: OrganizationMemberUpdate } + { data: OrganizationInviteAccept } > = (props) => { - const { memberId, data } = props ?? {}; + const { data } = props ?? {}; - return updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch( - memberId, + return acceptOrgInviteApiV1OrganizationsInvitesAcceptPost( data, requestOptions, ); @@ -2388,33 +2547,31 @@ export const getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationO return { mutationFn, ...mutationOptions }; }; -export type UpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationResult = +export type AcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationResult = NonNullable< Awaited< - ReturnType + ReturnType > >; -export type UpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationBody = - OrganizationMemberUpdate; -export type UpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationError = +export type AcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationBody = + OrganizationInviteAccept; +export type AcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationError = HTTPValidationError; /** - * @summary Update Org Member + * @summary Accept Org Invite */ -export const useUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch = < +export const useAcceptOrgInviteApiV1OrganizationsInvitesAcceptPost = < TError = HTTPValidationError, TContext = unknown, >( options?: { mutation?: UseMutationOptions< Awaited< - ReturnType< - typeof updateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch - > + ReturnType >, TError, - { memberId: string; data: OrganizationMemberUpdate }, + { data: OrganizationInviteAccept }, TContext >; request?: SecondParameter; @@ -2422,173 +2579,16 @@ export const useUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatch = < queryClient?: QueryClient, ): UseMutationResult< Awaited< - ReturnType + ReturnType >, TError, - { memberId: string; data: OrganizationMemberUpdate }, + { data: OrganizationInviteAccept }, TContext > => { return useMutation( - getUpdateOrgMemberApiV1OrganizationsMeMembersMemberIdPatchMutationOptions( + getAcceptOrgInviteApiV1OrganizationsInvitesAcceptPostMutationOptions( options, ), queryClient, ); }; -/** - * Update board-level access settings for a member. - * @summary Update Member Access - */ -export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse200 = - { - data: OrganizationMemberRead; - status: 200; - }; - -export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse422 = - { - data: HTTPValidationError; - status: 422; - }; - -export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseSuccess = - updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse200 & { - headers: Headers; - }; -export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseError = - updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse422 & { - headers: Headers; - }; - -export type updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponse = - - | updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseSuccess - | updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutResponseError; - -export const getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutUrl = - (memberId: string) => { - return `/api/v1/organizations/me/members/${memberId}/access`; - }; - -export const updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut = - async ( - memberId: string, - organizationMemberAccessUpdate: OrganizationMemberAccessUpdate, - options?: RequestInit, - ): Promise => { - return customFetch( - getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutUrl( - memberId, - ), - { - ...options, - method: "PUT", - headers: { "Content-Type": "application/json", ...options?.headers }, - body: JSON.stringify(organizationMemberAccessUpdate), - }, - ); - }; - -export const getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationOptions = - (options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut - > - >, - TError, - { memberId: string; data: OrganizationMemberAccessUpdate }, - TContext - >; - request?: SecondParameter; - }): UseMutationOptions< - Awaited< - ReturnType< - typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut - > - >, - TError, - { memberId: string; data: OrganizationMemberAccessUpdate }, - TContext - > => { - const mutationKey = [ - "updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut", - ]; - 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 updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut - > - >, - { memberId: string; data: OrganizationMemberAccessUpdate } - > = (props) => { - const { memberId, data } = props ?? {}; - - return updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut( - memberId, - data, - requestOptions, - ); - }; - - return { mutationFn, ...mutationOptions }; - }; - -export type UpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationResult = - NonNullable< - Awaited< - ReturnType< - typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut - > - > - >; -export type UpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationBody = - OrganizationMemberAccessUpdate; -export type UpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationError = - HTTPValidationError; - -/** - * @summary Update Member Access - */ -export const useUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut = - ( - options?: { - mutation?: UseMutationOptions< - Awaited< - ReturnType< - typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut - > - >, - TError, - { memberId: string; data: OrganizationMemberAccessUpdate }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, - ): UseMutationResult< - Awaited< - ReturnType< - typeof updateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPut - > - >, - TError, - { memberId: string; data: OrganizationMemberAccessUpdate }, - TContext - > => { - return useMutation( - getUpdateMemberAccessApiV1OrganizationsMeMembersMemberIdAccessPutMutationOptions( - options, - ), - queryClient, - ); - }; diff --git a/frontend/src/api/generated/skills/skills.ts b/frontend/src/api/generated/skills/skills.ts index 1e34e5ed..af142e6f 100644 --- a/frontend/src/api/generated/skills/skills.ts +++ b/frontend/src/api/generated/skills/skills.ts @@ -1233,126 +1233,6 @@ export const useCreateSkillPackApiV1SkillsPacksPost = < queryClient, ); }; -/** - * Delete one pack source from the organization. - * @summary Delete Skill Pack - */ -export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseSuccess = - deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseError = - deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse = - | deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseSuccess - | deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseError; - -export const getDeleteSkillPackApiV1SkillsPacksPackIdDeleteUrl = ( - packId: string, -) => { - return `/api/v1/skills/packs/${packId}`; -}; - -export const deleteSkillPackApiV1SkillsPacksPackIdDelete = async ( - packId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteSkillPackApiV1SkillsPacksPackIdDeleteUrl(packId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { packId: string }, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { packId: string }, - TContext -> => { - const mutationKey = ["deleteSkillPackApiV1SkillsPacksPackIdDelete"]; - 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>, - { packId: string } - > = (props) => { - const { packId } = props ?? {}; - - return deleteSkillPackApiV1SkillsPacksPackIdDelete(packId, requestOptions); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationResult = - NonNullable< - Awaited> - >; - -export type DeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationError = - HTTPValidationError; - -/** - * @summary Delete Skill Pack - */ -export const useDeleteSkillPackApiV1SkillsPacksPackIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { packId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { packId: string }, - TContext -> => { - return useMutation( - getDeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationOptions(options), - queryClient, - ); -}; /** * Get one skill pack by ID. * @summary Get Skill Pack @@ -1688,6 +1568,126 @@ export const useUpdateSkillPackApiV1SkillsPacksPackIdPatch = < queryClient, ); }; +/** + * Delete one pack source from the organization. + * @summary Delete Skill Pack + */ +export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse200 = { + data: OkResponse; + status: 200; +}; + +export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseSuccess = + deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseError = + deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteSkillPackApiV1SkillsPacksPackIdDeleteResponse = + | deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseSuccess + | deleteSkillPackApiV1SkillsPacksPackIdDeleteResponseError; + +export const getDeleteSkillPackApiV1SkillsPacksPackIdDeleteUrl = ( + packId: string, +) => { + return `/api/v1/skills/packs/${packId}`; +}; + +export const deleteSkillPackApiV1SkillsPacksPackIdDelete = async ( + packId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteSkillPackApiV1SkillsPacksPackIdDeleteUrl(packId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getDeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { packId: string }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { packId: string }, + TContext +> => { + const mutationKey = ["deleteSkillPackApiV1SkillsPacksPackIdDelete"]; + 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>, + { packId: string } + > = (props) => { + const { packId } = props ?? {}; + + return deleteSkillPackApiV1SkillsPacksPackIdDelete(packId, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationResult = + NonNullable< + Awaited> + >; + +export type DeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationError = + HTTPValidationError; + +/** + * @summary Delete Skill Pack + */ +export const useDeleteSkillPackApiV1SkillsPacksPackIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { packId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { packId: string }, + TContext +> => { + return useMutation( + getDeleteSkillPackApiV1SkillsPacksPackIdDeleteMutationOptions(options), + queryClient, + ); +}; /** * Clone a pack repository and upsert discovered skills from `skills/**\/SKILL.md`. * @summary Sync Skill Pack diff --git a/frontend/src/api/generated/tags/tags.ts b/frontend/src/api/generated/tags/tags.ts index 36278bd7..4f2e2a8c 100644 --- a/frontend/src/api/generated/tags/tags.ts +++ b/frontend/src/api/generated/tags/tags.ts @@ -360,122 +360,6 @@ export const useCreateTagApiV1TagsPost = < queryClient, ); }; -/** - * Delete a tag and remove all associated tag links. - * @summary Delete Tag - */ -export type deleteTagApiV1TagsTagIdDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteTagApiV1TagsTagIdDeleteResponse422 = { - data: HTTPValidationError; - status: 422; -}; - -export type deleteTagApiV1TagsTagIdDeleteResponseSuccess = - deleteTagApiV1TagsTagIdDeleteResponse200 & { - headers: Headers; - }; -export type deleteTagApiV1TagsTagIdDeleteResponseError = - deleteTagApiV1TagsTagIdDeleteResponse422 & { - headers: Headers; - }; - -export type deleteTagApiV1TagsTagIdDeleteResponse = - | deleteTagApiV1TagsTagIdDeleteResponseSuccess - | deleteTagApiV1TagsTagIdDeleteResponseError; - -export const getDeleteTagApiV1TagsTagIdDeleteUrl = (tagId: string) => { - return `/api/v1/tags/${tagId}`; -}; - -export const deleteTagApiV1TagsTagIdDelete = async ( - tagId: string, - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteTagApiV1TagsTagIdDeleteUrl(tagId), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteTagApiV1TagsTagIdDeleteMutationOptions = < - TError = HTTPValidationError, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { tagId: string }, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - { tagId: string }, - TContext -> => { - const mutationKey = ["deleteTagApiV1TagsTagIdDelete"]; - 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>, - { tagId: string } - > = (props) => { - const { tagId } = props ?? {}; - - return deleteTagApiV1TagsTagIdDelete(tagId, requestOptions); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteTagApiV1TagsTagIdDeleteMutationResult = NonNullable< - Awaited> ->; - -export type DeleteTagApiV1TagsTagIdDeleteMutationError = HTTPValidationError; - -/** - * @summary Delete Tag - */ -export const useDeleteTagApiV1TagsTagIdDelete = < - TError = HTTPValidationError, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - { tagId: string }, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - { tagId: string }, - TContext -> => { - return useMutation( - getDeleteTagApiV1TagsTagIdDeleteMutationOptions(options), - queryClient, - ); -}; /** * Get a single tag in the active organization. * @summary Get Tag @@ -792,3 +676,119 @@ export const useUpdateTagApiV1TagsTagIdPatch = < queryClient, ); }; +/** + * Delete a tag and remove all associated tag links. + * @summary Delete Tag + */ +export type deleteTagApiV1TagsTagIdDeleteResponse200 = { + data: OkResponse; + status: 200; +}; + +export type deleteTagApiV1TagsTagIdDeleteResponse422 = { + data: HTTPValidationError; + status: 422; +}; + +export type deleteTagApiV1TagsTagIdDeleteResponseSuccess = + deleteTagApiV1TagsTagIdDeleteResponse200 & { + headers: Headers; + }; +export type deleteTagApiV1TagsTagIdDeleteResponseError = + deleteTagApiV1TagsTagIdDeleteResponse422 & { + headers: Headers; + }; + +export type deleteTagApiV1TagsTagIdDeleteResponse = + | deleteTagApiV1TagsTagIdDeleteResponseSuccess + | deleteTagApiV1TagsTagIdDeleteResponseError; + +export const getDeleteTagApiV1TagsTagIdDeleteUrl = (tagId: string) => { + return `/api/v1/tags/${tagId}`; +}; + +export const deleteTagApiV1TagsTagIdDelete = async ( + tagId: string, + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteTagApiV1TagsTagIdDeleteUrl(tagId), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getDeleteTagApiV1TagsTagIdDeleteMutationOptions = < + TError = HTTPValidationError, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { tagId: string }, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + { tagId: string }, + TContext +> => { + const mutationKey = ["deleteTagApiV1TagsTagIdDelete"]; + 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>, + { tagId: string } + > = (props) => { + const { tagId } = props ?? {}; + + return deleteTagApiV1TagsTagIdDelete(tagId, requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteTagApiV1TagsTagIdDeleteMutationResult = NonNullable< + Awaited> +>; + +export type DeleteTagApiV1TagsTagIdDeleteMutationError = HTTPValidationError; + +/** + * @summary Delete Tag + */ +export const useDeleteTagApiV1TagsTagIdDelete = < + TError = HTTPValidationError, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + { tagId: string }, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + { tagId: string }, + TContext +> => { + return useMutation( + getDeleteTagApiV1TagsTagIdDeleteMutationOptions(options), + queryClient, + ); +}; diff --git a/frontend/src/api/generated/tasks/tasks.ts b/frontend/src/api/generated/tasks/tasks.ts index cf1f6ac2..1c246410 100644 --- a/frontend/src/api/generated/tasks/tasks.ts +++ b/frontend/src/api/generated/tasks/tasks.ts @@ -40,6 +40,259 @@ import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; +/** + * Stream task and task-comment events as SSE payloads. + * @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 }; +} + /** * List board tasks with optional status and assignment filters. * @summary List Tasks @@ -402,385 +655,6 @@ export const useCreateTaskApiV1BoardsBoardIdTasksPost = < queryClient, ); }; -/** - * Stream task and task-comment events as SSE payloads. - * @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 }; -} - -/** - * Delete a task and related records. - * @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, - ); -}; /** * Update task status, assignment, comment, and dependency state. * @summary Update Task @@ -920,6 +794,132 @@ export const useUpdateTaskApiV1BoardsBoardIdTasksTaskIdPatch = < queryClient, ); }; +/** + * Delete a task and related records. + * @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, + ); +}; /** * List comments for a task in chronological order. * @summary List Task Comments diff --git a/frontend/src/api/generated/users/users.ts b/frontend/src/api/generated/users/users.ts index 31c86e07..825fc351 100644 --- a/frontend/src/api/generated/users/users.ts +++ b/frontend/src/api/generated/users/users.ts @@ -31,108 +31,6 @@ import { customFetch } from "../../mutator"; type SecondParameter unknown> = Parameters[1]; -/** - * Delete the authenticated account and any personal-only organizations. - * @summary Delete Me - */ -export type deleteMeApiV1UsersMeDeleteResponse200 = { - data: OkResponse; - status: 200; -}; - -export type deleteMeApiV1UsersMeDeleteResponseSuccess = - deleteMeApiV1UsersMeDeleteResponse200 & { - headers: Headers; - }; -export type deleteMeApiV1UsersMeDeleteResponse = - deleteMeApiV1UsersMeDeleteResponseSuccess; - -export const getDeleteMeApiV1UsersMeDeleteUrl = () => { - return `/api/v1/users/me`; -}; - -export const deleteMeApiV1UsersMeDelete = async ( - options?: RequestInit, -): Promise => { - return customFetch( - getDeleteMeApiV1UsersMeDeleteUrl(), - { - ...options, - method: "DELETE", - }, - ); -}; - -export const getDeleteMeApiV1UsersMeDeleteMutationOptions = < - TError = unknown, - TContext = unknown, ->(options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - void, - TContext - >; - request?: SecondParameter; -}): UseMutationOptions< - Awaited>, - TError, - void, - TContext -> => { - const mutationKey = ["deleteMeApiV1UsersMeDelete"]; - 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>, - void - > = () => { - return deleteMeApiV1UsersMeDelete(requestOptions); - }; - - return { mutationFn, ...mutationOptions }; -}; - -export type DeleteMeApiV1UsersMeDeleteMutationResult = NonNullable< - Awaited> ->; - -export type DeleteMeApiV1UsersMeDeleteMutationError = unknown; - -/** - * @summary Delete Me - */ -export const useDeleteMeApiV1UsersMeDelete = < - TError = unknown, - TContext = unknown, ->( - options?: { - mutation?: UseMutationOptions< - Awaited>, - TError, - void, - TContext - >; - request?: SecondParameter; - }, - queryClient?: QueryClient, -): UseMutationResult< - Awaited>, - TError, - void, - TContext -> => { - return useMutation( - getDeleteMeApiV1UsersMeDeleteMutationOptions(options), - queryClient, - ); -}; /** * Return the authenticated user's current profile payload. * @summary Get Me @@ -303,6 +201,108 @@ export function useGetMeApiV1UsersMeGet< return { ...query, queryKey: queryOptions.queryKey }; } +/** + * Delete the authenticated account and any personal-only organizations. + * @summary Delete Me + */ +export type deleteMeApiV1UsersMeDeleteResponse200 = { + data: OkResponse; + status: 200; +}; + +export type deleteMeApiV1UsersMeDeleteResponseSuccess = + deleteMeApiV1UsersMeDeleteResponse200 & { + headers: Headers; + }; +export type deleteMeApiV1UsersMeDeleteResponse = + deleteMeApiV1UsersMeDeleteResponseSuccess; + +export const getDeleteMeApiV1UsersMeDeleteUrl = () => { + return `/api/v1/users/me`; +}; + +export const deleteMeApiV1UsersMeDelete = async ( + options?: RequestInit, +): Promise => { + return customFetch( + getDeleteMeApiV1UsersMeDeleteUrl(), + { + ...options, + method: "DELETE", + }, + ); +}; + +export const getDeleteMeApiV1UsersMeDeleteMutationOptions = < + TError = unknown, + TContext = unknown, +>(options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + void, + TContext + >; + request?: SecondParameter; +}): UseMutationOptions< + Awaited>, + TError, + void, + TContext +> => { + const mutationKey = ["deleteMeApiV1UsersMeDelete"]; + 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>, + void + > = () => { + return deleteMeApiV1UsersMeDelete(requestOptions); + }; + + return { mutationFn, ...mutationOptions }; +}; + +export type DeleteMeApiV1UsersMeDeleteMutationResult = NonNullable< + Awaited> +>; + +export type DeleteMeApiV1UsersMeDeleteMutationError = unknown; + +/** + * @summary Delete Me + */ +export const useDeleteMeApiV1UsersMeDelete = < + TError = unknown, + TContext = unknown, +>( + options?: { + mutation?: UseMutationOptions< + Awaited>, + TError, + void, + TContext + >; + request?: SecondParameter; + }, + queryClient?: QueryClient, +): UseMutationResult< + Awaited>, + TError, + void, + TContext +> => { + return useMutation( + getDeleteMeApiV1UsersMeDeleteMutationOptions(options), + queryClient, + ); +}; /** * Apply partial profile updates for the authenticated user. * @summary Update Me diff --git a/frontend/src/app/boards/[boardId]/edit/page.tsx b/frontend/src/app/boards/[boardId]/edit/page.tsx index 0f048020..7112bec6 100644 --- a/frontend/src/app/boards/[boardId]/edit/page.tsx +++ b/frontend/src/app/boards/[boardId]/edit/page.tsx @@ -15,6 +15,10 @@ import { useGetBoardApiV1BoardsBoardIdGet, useUpdateBoardApiV1BoardsBoardIdPatch, } from "@/api/generated/boards/boards"; +import { + type listAgentsApiV1AgentsGetResponse, + useListAgentsApiV1AgentsGet, +} from "@/api/generated/agents/agents"; import { getListBoardWebhooksApiV1BoardsBoardIdWebhooksGetQueryKey, type listBoardWebhooksApiV1BoardsBoardIdWebhooksGetResponse, @@ -33,6 +37,7 @@ import { } from "@/api/generated/gateways/gateways"; import { useOrganizationMembership } from "@/lib/use-organization-membership"; import type { + AgentRead, BoardGroupRead, BoardWebhookRead, BoardRead, @@ -62,8 +67,11 @@ const slugify = (value: string) => .replace(/[^a-z0-9]+/g, "-") .replace(/(^-|-$)/g, "") || "board"; +const LEAD_AGENT_VALUE = "__lead_agent__"; + type WebhookCardProps = { webhook: BoardWebhookRead; + agents: AgentRead[]; isLoading: boolean; isWebhookCreating: boolean; isDeletingWebhook: boolean; @@ -72,11 +80,16 @@ type WebhookCardProps = { onCopy: (webhook: BoardWebhookRead) => void; onDelete: (webhookId: string) => void; onViewPayloads: (webhookId: string) => void; - onUpdate: (webhookId: string, description: string) => Promise; + onUpdate: ( + webhookId: string, + description: string, + agentId: string | null, + ) => Promise; }; function WebhookCard({ webhook, + agents, isLoading, isWebhookCreating, isDeletingWebhook, @@ -89,20 +102,32 @@ function WebhookCard({ }: WebhookCardProps) { const [isEditing, setIsEditing] = useState(false); const [draftDescription, setDraftDescription] = useState(webhook.description); + const [draftAgentValue, setDraftAgentValue] = useState( + webhook.agent_id ?? LEAD_AGENT_VALUE, + ); const isBusy = isLoading || isWebhookCreating || isDeletingWebhook || isUpdatingWebhook; const trimmedDescription = draftDescription.trim(); const isDescriptionChanged = trimmedDescription !== webhook.description.trim(); + const isAgentChanged = draftAgentValue !== (webhook.agent_id ?? LEAD_AGENT_VALUE); + const isChanged = isDescriptionChanged || isAgentChanged; + const mappedAgent = webhook.agent_id + ? agents.find((agent) => agent.id === webhook.agent_id) ?? null + : null; const handleSave = async () => { if (!trimmedDescription) return; - if (!isDescriptionChanged) { + if (!isChanged) { setIsEditing(false); return; } - const saved = await onUpdate(webhook.id, trimmedDescription); + const saved = await onUpdate( + webhook.id, + trimmedDescription, + draftAgentValue === LEAD_AGENT_VALUE ? null : draftAgentValue, + ); if (saved) { setIsEditing(false); } @@ -141,6 +166,7 @@ function WebhookCard({ variant="ghost" onClick={() => { setDraftDescription(webhook.description); + setDraftAgentValue(webhook.agent_id ?? LEAD_AGENT_VALUE); setIsEditing(false); }} disabled={isBusy} @@ -162,6 +188,7 @@ function WebhookCard({ variant="ghost" onClick={() => { setDraftDescription(webhook.description); + setDraftAgentValue(webhook.agent_id ?? LEAD_AGENT_VALUE); setIsEditing(true); }} disabled={isBusy} @@ -181,17 +208,47 @@ function WebhookCard({ {isEditing ? ( -