import { apiFetch } from './client.js' export function listInitiativeRoadmapItems(initiativeId) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/items`) } export function listInitiativeRoadmapDependencies(initiativeId) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/dependencies`) } export function listInitiativeRoadmapCriteriaProgress(initiativeId) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/criteria-progress`) } export function listInitiativeRoadmapGraphState(initiativeId) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/graph-state`) } export function getInitiativePlanIstView(initiativeId) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/plan-ist-view`) } export function listInitiativePlanSnapshots(initiativeId) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/plan-snapshots`) } export function createInitiativePlanSnapshot(initiativeId, body) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/plan-snapshots`, { method: 'POST', body: JSON.stringify(body), }) } export function createInitiativeRoadmapItem(initiativeId, body) { return apiFetch(`/api/initiatives/${initiativeId}/roadmap/items`, { method: 'POST', body: JSON.stringify(body), }) } export function updateRoadmapItem(itemId, body) { return apiFetch(`/api/roadmap-items/${itemId}`, { method: 'PATCH', body: JSON.stringify(body), }) } export function deleteRoadmapItem(itemId) { return apiFetch(`/api/roadmap-items/${itemId}`, { method: 'DELETE' }) } export function verifyRoadmapItemReached(itemId) { return apiFetch(`/api/roadmap-items/${itemId}/verify-reached`, { method: 'POST', }) } export function reopenRoadmapItem(itemId, body = {}) { return apiFetch(`/api/roadmap-items/${itemId}/reopen`, { method: 'POST', body: JSON.stringify(body), }) } export function getRoadmapItem(itemId) { return apiFetch(`/api/roadmap-items/${itemId}`) } export function listRoadmapItemCriteria(itemId) { return apiFetch(`/api/roadmap-items/${itemId}/criteria`) } export function listGatePractices(gateId) { return apiFetch(`/api/roadmap-items/${gateId}/practices`) } export function createGatePractice(gateId, body) { return apiFetch(`/api/roadmap-items/${gateId}/practices`, { method: 'POST', body: JSON.stringify(body), }) } export function createRoadmapItemCriterion(itemId, body) { return apiFetch(`/api/roadmap-items/${itemId}/criteria`, { method: 'POST', body: JSON.stringify(body), }) } export function updateRoadmapCriterion(criterionId, body) { return apiFetch(`/api/roadmap-criteria/${criterionId}`, { method: 'PATCH', body: JSON.stringify(body), }) } export function deleteRoadmapCriterion(criterionId) { return apiFetch(`/api/roadmap-criteria/${criterionId}`, { method: 'DELETE' }) } export function satisfyRoadmapCriterion(criterionId, body = {}) { return apiFetch(`/api/roadmap-criteria/${criterionId}/satisfy`, { method: 'POST', body: JSON.stringify(body), }) } export function waiveRoadmapCriterion(criterionId, body) { return apiFetch(`/api/roadmap-criteria/${criterionId}/waive`, { method: 'POST', body: JSON.stringify(body), }) } export function deferRoadmapCriterion(criterionId, body) { return apiFetch(`/api/roadmap-criteria/${criterionId}/defer`, { method: 'POST', body: JSON.stringify(body), }) } export function listRoadmapItemDependencies(itemId) { return apiFetch(`/api/roadmap-items/${itemId}/dependencies`) } export function addRoadmapItemDependency(itemId, body) { return apiFetch(`/api/roadmap-items/${itemId}/dependencies`, { method: 'POST', body: JSON.stringify(body), }) } export function deleteRoadmapDependency(dependencyId) { return apiFetch(`/api/roadmap-dependencies/${dependencyId}`, { method: 'DELETE' }) }