0.2.5 initial commit

Makefile incomplete
This commit is contained in:
Aiden McClelland
2020-11-23 13:44:28 -07:00
commit 95d3845906
503 changed files with 53448 additions and 0 deletions

View File

@@ -0,0 +1,107 @@
//////////////// Install/Uninstall ////////////////////////////////////////////////
type AppDependentBreakage = {
// id of the dependent app which will or did break (Stopped) given the action.
id: string
title: string
iconUrl: string
}
POST /apps/:appId/install(?dryrun)
body: {
version: string, //semver
}
response : ApiAppInstalledFull & { breakages: AppDependentBreakage[] }
POST /apps/:appId/uninstall(?dryrun)
response : { breakages: AppDependentBreakage[] }
/////////////////////////////// Store/Show /////////////////////////////////////////////////
type ApiAppAvailableFull = ... {
// app base data
id: string
title: string
status: AppStatus | null
versionInstalled: string | null
iconURL: string
// preview data
versionLatest: string
descriptionShort: string
// version specific data
releaseNotes: string
serviceRequirements: AppDependencyRequirement[]
// other data
descriptionLong: string,
version: string[],
}
type AppDependencyRequirement = ... {
//app base data (minus status + version installed)
id: string
title: string
iconURL: string
// dependency data
optional: string | null
default: boolean
versionSpec: string
description: string | null
violation: AppDependencyRequirementViolation | null
}
type AppDependencyRequirementViolation =
{ name: 'missing'; suggestedVersion: string; } |
{ name: 'incompatible-version'; suggestedVersion: string; } |
{ name: 'incompatible-config'; ruleViolations: string; auto-configurable: boolean } | // (auto-configurable for if/when we do that)
{ name: 'incompatible-status'; status: AppStatus; }
// Get App Available Full
GET /apps/:appId/store
response: ApiAppAvailableFull
// Get Version Specific Data for an App Available
GET /apps/:appId/store/:version
response: {
// version specific data
releaseNotes: string
serviceRequirements: AppDependencyRequirement[]
}
///////////////////////////// Installed/Show ///////////////////////////////////////////
type ApiAppInstalledFull {
// app base data
id: string
title: string
status: AppStatus | null
versionInstalled: string | null
iconURL: string
// preview data
// other data
instructions: string | null
lastBackup: string | null
configuredRequirements: AppDependencyRequirement[] | null // null if not yet configured
}
// Get App Installed Full
GET /apps/:appId/installed
reseponse: AppInstalledFull