UNPKG

shipthis

Version:

ShipThis manages building and uploading your Godot games to the App Store and Google Play.

56 lines (53 loc) 1.84 kB
import { useQuery } from '@tanstack/react-query'; import axios from 'axios'; import { b as getShortDate, p as getAuthedHeaders, o as API_URL, I as castArrayObjectDates } from './index-BwnzoldS.js'; import { c as cacheKeys } from './useAndroidServiceAccountTestResult-CwKeW0ED.js'; import { g as getShortUUID } from './index-CJWMt1s-.js'; async function queryProjectCredentials({ projectId, ...pageAndSortParams }) { try { const headers = getAuthedHeaders(); const url = `${API_URL}/projects/${projectId}/credentials`; const response = await axios.get(url, { headers, params: pageAndSortParams }); return { ...response.data, data: castArrayObjectDates(response.data.data) }; } catch (error) { console.warn("queryProjectCredentials Error", error); throw error; } } function getProjectCredentialSummary(credential) { const trimLength = 25; const summary = {}; summary.id = getShortUUID(credential.id); summary.type = credential.type; summary.serial = credential.serialNumber.slice(0, trimLength) + (credential.serialNumber.length > trimLength ? "\u2026" : ""); summary.isActive = credential.isActive; summary.createdAt = getShortDate(credential.createdAt); return summary; } const useProjectCredentials = ({ platform, type, ...fetchProps }) => { const queryResult = useQuery({ queryFn: async () => queryProjectCredentials(fetchProps), queryKey: cacheKeys.projectCredentials(fetchProps), select(data) { if (!(platform || type)) return data; return { ...data, data: data.data.filter( (credential) => (!platform || credential.platform === platform) && (!type || credential.type === type) ) }; } }); return queryResult; }; export { getProjectCredentialSummary as g, useProjectCredentials as u };