Skip to content

Commit 4b0758a

Browse files
committed
chore: use GQL TargetName enum
1 parent 04f394e commit 4b0758a

File tree

4 files changed

+18
-13
lines changed

4 files changed

+18
-13
lines changed

src/lib/components/sml-versions/SMLVersionForm.svelte

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import { smlVersionSchema } from '$lib/models/sml-versions';
99
import Textfield from '@smui/textfield';
1010
import Button from '@smui/button';
11-
import { VersionStabilities } from '$lib/generated';
11+
import { TargetName, VersionStabilities } from '$lib/generated';
1212
import Select, { Option } from '@smui/select';
1313
1414
export let onSubmit: (data: SMLVersionData) => void;
@@ -22,7 +22,7 @@
2222
satisfactory_version: 0,
2323
stability: VersionStabilities.Alpha,
2424
version: '',
25-
targets: [{ targetName: 'Windows', link: '' }]
25+
targets: [{ targetName: TargetName.Windows, link: '' }]
2626
};
2727
export let submitText = 'Create';
2828
@@ -33,7 +33,7 @@
3333
});
3434
3535
const addTarget = () => {
36-
addField('targets', { targetName: '', link: '' });
36+
addField('targets', { targetName: TargetName.Windows, link: '' });
3737
};
3838
3939
const removeTarget = (i: number) => {
@@ -106,9 +106,9 @@
106106
<div class="flex content-center gap-2">
107107
<div>
108108
<Select bind:value={target.targetName} label="Platform">
109-
<Option value="Windows">Windows Client</Option>
110-
<Option value="WindowsServer">Windows Server</Option>
111-
<Option value="LinuxServer">Linux Server</Option>
109+
<Option value={TargetName.Windows}>Windows Client</Option>
110+
<Option value={TargetName.WindowsServer}>Windows Server</Option>
111+
<Option value={TargetName.LinuxServer}>Linux Server</Option>
112112
<svelte:fragment slot="helperText">
113113
<ValidationMessage for="targets.{i}.targetName" let:messages={message}>
114114
<span class="validation-message">{message || ''}</span>

src/lib/models/sml-versions.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import * as zod from 'zod';
2-
import type { UpdateSmlVersionTarget, VersionStabilities } from '$lib/generated';
2+
import type { TargetName, UpdateSmlVersionTarget, VersionStabilities } from '$lib/generated';
33

44
export type SMLTargetData = {
5-
targetName: string;
5+
targetName: TargetName;
66
link: string;
77
};
88

src/lib/models/versions.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import type { Writable } from 'svelte/store';
55
import type { ZodObject, ZodRawShape } from 'zod';
66
import type { File } from '$lib/models/file';
77
import type { VersionStabilities } from '$lib/generated';
8+
import { TargetName } from '$lib/generated/graphql';
89

910
export type VersionData = {
1011
file: File;
@@ -25,7 +26,9 @@ export type VersionMetadata = {
2526
targets: string[];
2627
};
2728

28-
const ALLOWED_TARGETS = ['Windows', 'WindowsServer', 'LinuxServer'];
29+
const ALLOWED_TARGETS = Object.keys(TargetName)
30+
.map((key) => TargetName[key])
31+
.filter((value) => typeof value === 'string') as TargetName[];
2932

3033
const readUPluginJson = async (
3134
uPluginJson: string,

src/lib/utils/formatting.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { TargetName } from '$lib/generated/graphql';
2+
13
export const prettyDate = (date: Date | string) => {
24
if (typeof date === 'string') {
35
date = new Date(date);
@@ -22,13 +24,13 @@ export const prettyBytes = (bytes: number, decimals = 2) => {
2224
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
2325
};
2426

25-
export const prettyTarget = (target: string) => {
27+
export const prettyTarget = (target: TargetName) => {
2628
switch (target) {
27-
case 'Windows':
29+
case TargetName.Windows:
2830
return 'Windows Client';
29-
case 'WindowsServer':
31+
case TargetName.WindowsServer:
3032
return 'Windows Server';
31-
case 'LinuxServer':
33+
case TargetName.LinuxServer:
3234
return 'Linux Server';
3335
}
3436

0 commit comments

Comments
 (0)