diff --git a/sdk/lib/StartSdk.ts b/sdk/lib/StartSdk.ts index 0b38d90af..569d83b16 100644 --- a/sdk/lib/StartSdk.ts +++ b/sdk/lib/StartSdk.ts @@ -30,17 +30,11 @@ import { healthCheck, HealthCheckParams } from "./health/HealthCheck" import { checkPortListening } from "./health/checkFns/checkPortListening" import { checkWebUrl, runHealthScript } from "./health/checkFns" import { List } from "./config/builder/list" -import { VersionInfo, VersionOptions } from "./versionInfo/VersionInfo" import { Install, InstallFn } from "./inits/setupInstall" import { setupActions } from "./actions/setupActions" import { setupDependencyConfig } from "./dependencies/setupDependencyConfig" import { SetupBackupsParams, setupBackups } from "./backup/setupBackups" import { setupInit } from "./inits/setupInit" -import { - EnsureUniqueId, - VersionGraph, - setupVersionGraph, -} from "./versionInfo/setupVersionGraph" import { Uninstall, UninstallFn, setupUninstall } from "./inits/setupUninstall" import { setupMain } from "./mainFn" import { defaultTrigger } from "./trigger/defaultTrigger" @@ -81,6 +75,7 @@ import { } from "./dependencies/dependencies" import { health } from "." import { GetSslCertificate } from "./util/GetSslCertificate" +import { VersionGraph } from "./version" export const SDKVersion = testTypeVersion("0.3.6") @@ -420,13 +415,6 @@ export class StartSdk { started(onTerm: () => PromiseLike): PromiseLike }) => Promise>, ) => setupMain(fn), - setupVersionGraph: < - CurrentVersion extends string, - OtherVersions extends Array>, - >( - current: VersionInfo, - ...other: EnsureUniqueId - ) => setupVersionGraph(current, ...other), setupProperties: ( fn: (options: { effects: Effects }) => Promise, @@ -547,10 +535,6 @@ export class StartSdk { >, ) => List.dynamicText(getA), }, - VersionInfo: { - of: (options: VersionOptions) => - VersionInfo.of(options), - }, StorePath: pathBuilder(), Value: { toggle: Value.toggle, diff --git a/sdk/lib/index.ts b/sdk/lib/index.ts index 935ffc023..a023c4e81 100644 --- a/sdk/lib/index.ts +++ b/sdk/lib/index.ts @@ -29,3 +29,4 @@ export * as utils from "./util" export * as matches from "ts-matches" export * as YAML from "yaml" export * as TOML from "@iarna/toml" +export * from "./version" diff --git a/sdk/lib/inits/setupInit.ts b/sdk/lib/inits/setupInit.ts index 35971d3d3..5fd1c481c 100644 --- a/sdk/lib/inits/setupInit.ts +++ b/sdk/lib/inits/setupInit.ts @@ -4,7 +4,7 @@ import { SetInterfaces } from "../interfaces/setupInterfaces" import { ExposedStorePaths } from "../store/setupExposeStore" import * as T from "../types" -import { VersionGraph } from "../versionInfo/setupVersionGraph" +import { VersionGraph } from "../version/VersionGraph" import { Install } from "./setupInstall" import { Uninstall } from "./setupUninstall" diff --git a/sdk/lib/manifest/setupManifest.ts b/sdk/lib/manifest/setupManifest.ts index 2f836d05e..10aaa03db 100644 --- a/sdk/lib/manifest/setupManifest.ts +++ b/sdk/lib/manifest/setupManifest.ts @@ -2,7 +2,7 @@ import * as T from "../types" import { ImageConfig, ImageId, VolumeId } from "../osBindings" import { SDKManifest, SDKImageConfig } from "./ManifestTypes" import { SDKVersion } from "../StartSdk" -import { VersionGraph } from "../versionInfo/setupVersionGraph" +import { VersionGraph } from "../version/VersionGraph" /** * This is an example of a function that takes a manifest and returns a new manifest with additional properties @@ -25,8 +25,8 @@ export function setupManifest< }, Satisfies extends string[] = [], >( - manifest: SDKManifest & Manifest, versions: VersionGraph, + manifest: SDKManifest & Manifest, ): Manifest & T.Manifest { const images = Object.entries(manifest.images).reduce( (images, [k, v]) => { diff --git a/sdk/lib/test/configBuilder.test.ts b/sdk/lib/test/configBuilder.test.ts index bd0ddeab1..5c65271a8 100644 --- a/sdk/lib/test/configBuilder.test.ts +++ b/sdk/lib/test/configBuilder.test.ts @@ -6,8 +6,8 @@ import { Variants } from "../config/builder/variants" import { ValueSpec } from "../config/configTypes" import { setupManifest } from "../manifest/setupManifest" import { StartSdk } from "../StartSdk" -import { VersionGraph } from "../versionInfo/setupVersionGraph" -import { VersionInfo } from "../versionInfo/VersionInfo" +import { VersionGraph } from "../version/VersionGraph" +import { VersionInfo } from "../version/VersionInfo" describe("builder tests", () => { test("text", async () => { @@ -369,6 +369,13 @@ describe("values", () => { const sdk = StartSdk.of() .withManifest( setupManifest( + VersionGraph.of( + VersionInfo.of({ + version: "1.0.0:0", + releaseNotes: "", + migrations: {}, + }), + ), { id: "testOutput", title: "", @@ -402,13 +409,6 @@ describe("values", () => { }, }, }, - VersionGraph.of( - VersionInfo.of({ - version: "1.0.0:0", - releaseNotes: "", - migrations: {}, - }), - ), ), ) .withStore<{ test: "a" }>() diff --git a/sdk/lib/test/output.sdk.ts b/sdk/lib/test/output.sdk.ts index 3d8058bfa..4cdf85111 100644 --- a/sdk/lib/test/output.sdk.ts +++ b/sdk/lib/test/output.sdk.ts @@ -1,12 +1,21 @@ import { StartSdk } from "../StartSdk" import { setupManifest } from "../manifest/setupManifest" -import { VersionInfo } from "../versionInfo/VersionInfo" -import { VersionGraph } from "../versionInfo/setupVersionGraph" +import { VersionInfo } from "../version/VersionInfo" +import { VersionGraph } from "../version/VersionGraph" export type Manifest = any export const sdk = StartSdk.of() .withManifest( setupManifest( + VersionGraph.of( + VersionInfo.of({ + version: "1.0.0:0", + releaseNotes: "", + migrations: {}, + }) + .satisfies("#other:1.0.0:0") + .satisfies("#other:2.0.0:0"), + ), { id: "testOutput", title: "", @@ -41,15 +50,6 @@ export const sdk = StartSdk.of() }, }, }, - VersionGraph.of( - VersionInfo.of({ - version: "1.0.0:0", - releaseNotes: "", - migrations: {}, - }) - .satisfies("#other:1.0.0:0") - .satisfies("#other:2.0.0:0"), - ), ), ) .withStore<{ storeRoot: { storeLeaf: "value" } }>() diff --git a/sdk/lib/versionInfo/setupVersionGraph.ts b/sdk/lib/version/VersionGraph.ts similarity index 95% rename from sdk/lib/versionInfo/setupVersionGraph.ts rename to sdk/lib/version/VersionGraph.ts index 5f89a7e35..1b6b49bb9 100644 --- a/sdk/lib/versionInfo/setupVersionGraph.ts +++ b/sdk/lib/version/VersionGraph.ts @@ -191,16 +191,6 @@ export class VersionGraph { ) } -export function setupVersionGraph< - CurrentVersion extends string, - OtherVersions extends Array>, ->( - current: VersionInfo, - ...other: EnsureUniqueId -) { - return VersionGraph.of(current, ...other) -} - // prettier-ignore export type EnsureUniqueId = B extends [] ? A : diff --git a/sdk/lib/versionInfo/VersionInfo.ts b/sdk/lib/version/VersionInfo.ts similarity index 100% rename from sdk/lib/versionInfo/VersionInfo.ts rename to sdk/lib/version/VersionInfo.ts diff --git a/sdk/lib/version/index.ts b/sdk/lib/version/index.ts new file mode 100644 index 000000000..c7a47fc38 --- /dev/null +++ b/sdk/lib/version/index.ts @@ -0,0 +1,2 @@ +export * from "./VersionGraph" +export * from "./VersionInfo" diff --git a/web/projects/ui/src/app/pages/server-routes/sideload/sideload.page.ts b/web/projects/ui/src/app/pages/server-routes/sideload/sideload.page.ts index 9e09aca62..b95c4599f 100644 --- a/web/projects/ui/src/app/pages/server-routes/sideload/sideload.page.ts +++ b/web/projects/ui/src/app/pages/server-routes/sideload/sideload.page.ts @@ -22,7 +22,7 @@ const VERSION_2 = new Uint8Array([2]) export class SideloadPage { isMobile = isPlatform(window, 'ios') || isPlatform(window, 'android') toUpload: { - manifest: T.Manifest | null + manifest: { title: string; version: string } | null icon: string | null file: File | null } = {