mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-04-04 14:29:45 +00:00
Feature/fe new registry (#2647)
* bugfixes * update fe types * implement new registry types in marketplace and ui * fix marketplace types to have default params * add alt implementation toggle * merge cleanup * more cleanup and notes * fix build * cleanup sync with next/minor * add exver JS parser * parse ValidExVer to string * update types to interface * add VersionRange and comparative functions * Parse ExtendedVersion from string * add conjunction, disjunction, and inversion logic * consider flavor in satisfiedBy fn * consider prerelease for ordering * add compare fn for sorting * rename fns for consistency * refactoring * update compare fn to return null if flavors don't match * begin simplifying dependencies * under construction * wip * add dependency metadata to CurrentDependencyInfo * ditch inheritance for recursive VersionRange constructor. Recursive 'satisfiedBy' fn wip * preprocess manifest * misc fixes * use sdk version as osVersion in manifest * chore: Change the type to just validate and not generate all solutions. * add publishedAt * fix pegjs exports * integrate exver into sdk * misc fixes * complete satisfiedBy fn * refactor - use greaterThanOrEqual and lessThanOrEqual fns * fix tests * update dependency details * update types * remove interim types * rename alt implementation to flavor * cleanup os update * format exver.ts * add s9pk parsing endpoints * fix build * update to exver * exver and bug fixes * update static endpoints + cleanup * cleanup * update static proxy verification * make mocks more robust; fix dep icon fallback; cleanup * refactor alert versions and update fixtures * registry bugfixes * misc fixes * cleanup unused * convert patchdb ui seed to camelCase * update otherVersions type * change otherVersions: null to 'none' * refactor and complete feature * improve static endpoints * fix install params * mask systemd-networkd-wait-online * fix static file fetching * include non-matching versions in otherVersions * convert release notes to modal and clean up displayExver * alert for no other versions * Fix ack-instructions casing * fix indeterminate loader on service install --------- Co-authored-by: Aiden McClelland <me@drbonez.dev> Co-authored-by: Shadowy Super Coder <musashidisciple@proton.me> Co-authored-by: Aiden McClelland <3732071+dr-bonez@users.noreply.github.com> Co-authored-by: J H <dragondef@gmail.com> Co-authored-by: Matt Hill <mattnine@protonmail.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
import type { HealthCheckId } from "./HealthCheckId"
|
||||
import type { HealthCheckResult } from "./HealthCheckResult"
|
||||
import type { PackageId } from "./PackageId"
|
||||
|
||||
@@ -6,6 +7,7 @@ export type CheckDependenciesResult = {
|
||||
packageId: PackageId
|
||||
isInstalled: boolean
|
||||
isRunning: boolean
|
||||
healthChecks: Array<HealthCheckResult>
|
||||
configSatisfied: boolean
|
||||
healthChecks: { [key: HealthCheckId]: HealthCheckResult }
|
||||
version: string | null
|
||||
}
|
||||
|
||||
@@ -2,9 +2,8 @@
|
||||
import type { DataUrl } from "./DataUrl"
|
||||
|
||||
export type CurrentDependencyInfo = {
|
||||
title: string
|
||||
icon: DataUrl
|
||||
registryUrl: string
|
||||
versionSpec: string
|
||||
title: string | null
|
||||
icon: DataUrl | null
|
||||
versionRange: string
|
||||
configSatisfied: boolean
|
||||
} & ({ kind: "exists" } | { kind: "running"; healthChecks: string[] })
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
import type { PathOrUrl } from "./PathOrUrl"
|
||||
|
||||
export type DepInfo = { description: string | null; optional: boolean }
|
||||
export type DepInfo = {
|
||||
description: string | null
|
||||
optional: boolean
|
||||
s9pk: PathOrUrl | null
|
||||
}
|
||||
|
||||
9
sdk/lib/osBindings/DependencyMetadata.ts
Normal file
9
sdk/lib/osBindings/DependencyMetadata.ts
Normal file
@@ -0,0 +1,9 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
import type { DataUrl } from "./DataUrl"
|
||||
|
||||
export type DependencyMetadata = {
|
||||
title: string | null
|
||||
icon: DataUrl | null
|
||||
description: string | null
|
||||
optional: boolean
|
||||
}
|
||||
@@ -5,7 +5,6 @@ export type DependencyRequirement =
|
||||
kind: "running"
|
||||
id: string
|
||||
healthChecks: string[]
|
||||
versionSpec: string
|
||||
registryUrl: string
|
||||
versionRange: string
|
||||
}
|
||||
| { kind: "exists"; id: string; versionSpec: string; registryUrl: string }
|
||||
| { kind: "exists"; id: string; versionRange: string }
|
||||
|
||||
@@ -6,6 +6,7 @@ import type { PackageIndex } from "./PackageIndex"
|
||||
import type { SignerInfo } from "./SignerInfo"
|
||||
|
||||
export type FullIndex = {
|
||||
name: string | null
|
||||
icon: DataUrl | null
|
||||
package: PackageIndex
|
||||
os: OsIndex
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
|
||||
export type GetVersionParams = {
|
||||
export type GetOsVersionParams = {
|
||||
source: string | null
|
||||
target: string | null
|
||||
serverId: string | null
|
||||
@@ -7,5 +7,5 @@ export type GetPackageParams = {
|
||||
id: PackageId | null
|
||||
version: string | null
|
||||
sourceVersion: Version | null
|
||||
otherVersions: PackageDetailLevel | null
|
||||
otherVersions: PackageDetailLevel
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
|
||||
export type HardwareRequirements = {
|
||||
device: { [key: string]: string }
|
||||
device: { device?: string; processor?: string }
|
||||
ram: number | null
|
||||
arch: string[] | null
|
||||
}
|
||||
|
||||
9
sdk/lib/osBindings/InstallParams.ts
Normal file
9
sdk/lib/osBindings/InstallParams.ts
Normal file
@@ -0,0 +1,9 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
import type { PackageId } from "./PackageId"
|
||||
import type { Version } from "./Version"
|
||||
|
||||
export type InstallParams = {
|
||||
registry: string
|
||||
id: PackageId
|
||||
version: Version
|
||||
}
|
||||
@@ -13,6 +13,7 @@ export type Manifest = {
|
||||
id: PackageId
|
||||
title: string
|
||||
version: Version
|
||||
satisfies: Array<Version>
|
||||
releaseNotes: string
|
||||
license: string
|
||||
wrapperRepo: string
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
|
||||
export type PackageDetailLevel = "short" | "full"
|
||||
export type PackageDetailLevel = "none" | "short" | "full"
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
import type { Alerts } from "./Alerts"
|
||||
import type { DataUrl } from "./DataUrl"
|
||||
import type { DependencyMetadata } from "./DependencyMetadata"
|
||||
import type { Description } from "./Description"
|
||||
import type { HardwareRequirements } from "./HardwareRequirements"
|
||||
import type { MerkleArchiveCommitment } from "./MerkleArchiveCommitment"
|
||||
import type { PackageId } from "./PackageId"
|
||||
import type { RegistryAsset } from "./RegistryAsset"
|
||||
|
||||
export type PackageVersionInfo = {
|
||||
@@ -16,6 +19,9 @@ export type PackageVersionInfo = {
|
||||
upstreamRepo: string
|
||||
supportSite: string
|
||||
marketingSite: string
|
||||
donationUrl: string | null
|
||||
alerts: Alerts
|
||||
dependencyMetadata: { [key: PackageId]: DependencyMetadata }
|
||||
osVersion: string
|
||||
hardwareRequirements: HardwareRequirements
|
||||
sourceVersion: string | null
|
||||
|
||||
3
sdk/lib/osBindings/PathOrUrl.ts
Normal file
3
sdk/lib/osBindings/PathOrUrl.ts
Normal file
@@ -0,0 +1,3 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
|
||||
export type PathOrUrl = string
|
||||
@@ -3,6 +3,7 @@ import type { AnySignature } from "./AnySignature"
|
||||
import type { AnyVerifyingKey } from "./AnyVerifyingKey"
|
||||
|
||||
export type RegistryAsset<Commitment> = {
|
||||
publishedAt: string
|
||||
url: string
|
||||
commitment: Commitment
|
||||
signatures: { [key: AnyVerifyingKey]: AnySignature }
|
||||
|
||||
9
sdk/lib/osBindings/RegistryInfo.ts
Normal file
9
sdk/lib/osBindings/RegistryInfo.ts
Normal file
@@ -0,0 +1,9 @@
|
||||
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
||||
import type { Category } from "./Category"
|
||||
import type { DataUrl } from "./DataUrl"
|
||||
|
||||
export type RegistryInfo = {
|
||||
name: string | null
|
||||
icon: DataUrl | null
|
||||
categories: { [key: string]: Category }
|
||||
}
|
||||
@@ -37,6 +37,7 @@ export { CurrentDependencyInfo } from "./CurrentDependencyInfo"
|
||||
export { DataUrl } from "./DataUrl"
|
||||
export { Dependencies } from "./Dependencies"
|
||||
export { DependencyKind } from "./DependencyKind"
|
||||
export { DependencyMetadata } from "./DependencyMetadata"
|
||||
export { DependencyRequirement } from "./DependencyRequirement"
|
||||
export { DepInfo } from "./DepInfo"
|
||||
export { Description } from "./Description"
|
||||
@@ -51,6 +52,7 @@ export { FullIndex } from "./FullIndex"
|
||||
export { FullProgress } from "./FullProgress"
|
||||
export { GetHostInfoParams } from "./GetHostInfoParams"
|
||||
export { GetOsAssetParams } from "./GetOsAssetParams"
|
||||
export { GetOsVersionParams } from "./GetOsVersionParams"
|
||||
export { GetPackageParams } from "./GetPackageParams"
|
||||
export { GetPackageResponseFull } from "./GetPackageResponseFull"
|
||||
export { GetPackageResponse } from "./GetPackageResponse"
|
||||
@@ -61,7 +63,6 @@ export { GetSslCertificateParams } from "./GetSslCertificateParams"
|
||||
export { GetSslKeyParams } from "./GetSslKeyParams"
|
||||
export { GetStoreParams } from "./GetStoreParams"
|
||||
export { GetSystemSmtpParams } from "./GetSystemSmtpParams"
|
||||
export { GetVersionParams } from "./GetVersionParams"
|
||||
export { Governor } from "./Governor"
|
||||
export { Guid } from "./Guid"
|
||||
export { HardwareRequirements } from "./HardwareRequirements"
|
||||
@@ -82,6 +83,7 @@ export { InstalledState } from "./InstalledState"
|
||||
export { InstalledVersionParams } from "./InstalledVersionParams"
|
||||
export { InstallingInfo } from "./InstallingInfo"
|
||||
export { InstallingState } from "./InstallingState"
|
||||
export { InstallParams } from "./InstallParams"
|
||||
export { IpHostname } from "./IpHostname"
|
||||
export { IpInfo } from "./IpInfo"
|
||||
export { LanInfo } from "./LanInfo"
|
||||
@@ -109,11 +111,13 @@ export { PackageVersionInfo } from "./PackageVersionInfo"
|
||||
export { ParamsMaybePackageId } from "./ParamsMaybePackageId"
|
||||
export { ParamsPackageId } from "./ParamsPackageId"
|
||||
export { PasswordType } from "./PasswordType"
|
||||
export { PathOrUrl } from "./PathOrUrl"
|
||||
export { ProcedureId } from "./ProcedureId"
|
||||
export { Progress } from "./Progress"
|
||||
export { Public } from "./Public"
|
||||
export { RecoverySource } from "./RecoverySource"
|
||||
export { RegistryAsset } from "./RegistryAsset"
|
||||
export { RegistryInfo } from "./RegistryInfo"
|
||||
export { RemoveActionParams } from "./RemoveActionParams"
|
||||
export { RemoveAddressParams } from "./RemoveAddressParams"
|
||||
export { RemoveVersionParams } from "./RemoveVersionParams"
|
||||
|
||||
Reference in New Issue
Block a user