@zthun/romulator-client 1.7.1 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,15 +4,12 @@
4
4
  export declare enum ZRomulatorSystemId {
5
5
  ThreeDo = "3do",
6
6
  Adam = "adam",
7
- AGS = "ags",
8
7
  Amiga = "amiga",
9
8
  Amiga1200 = "amiga1200",
10
9
  Amiga600 = "amiga600",
11
10
  AmigaCd32 = "amigacd32",
12
11
  AmstradCpc = "amstradcpc",
13
12
  Android = "android",
14
- AndroidApps = "androidapps",
15
- AndroidGames = "androidgames",
16
13
  Apple2 = "apple2",
17
14
  Apple2Gs = "apple2gs",
18
15
  Arcade = "arcade",
@@ -28,37 +25,29 @@ export declare enum ZRomulatorSystemId {
28
25
  AtariJaguarCd = "atarijaguarcd",
29
26
  AtariLynx = "atarilynx",
30
27
  AtariSt = "atarist",
31
- AtariXe = "atarixe",
32
28
  Atomiswave = "atomiswave",
33
29
  BbcMicro = "bbcmicro",
34
30
  C64 = "c64",
35
31
  CdiMono1 = "cdimono1",
36
32
  Cdtv = "cdtv",
37
- ChaiLove = "chailove",
38
33
  ChannelF = "channelf",
39
34
  Coco = "coco",
40
35
  Colecovision = "colecovision",
41
- ConsoleArcade = "consolearcade",
42
36
  Cps = "cps",
43
37
  Cps1 = "cps1",
44
38
  Cps2 = "cps2",
45
39
  Cps3 = "cps3",
46
40
  CrVision = "crvision",
47
41
  Daphne = "daphne",
48
- Desktop = "desktop",
49
- Doom = "doom",
50
42
  Dos = "dos",
51
43
  Dragon32 = "dragon32",
52
44
  Dreamcast = "dreamcast",
53
45
  EasyRpg = "easyrpg",
54
46
  Electron = "electron",
55
- Emulators = "emulators",
56
- Epic = "epic",
57
47
  Famicom = "famicom",
58
48
  FBA = "fba",
59
49
  FBNeo = "fbneo",
60
50
  FDS = "fds",
61
- Flash = "flash",
62
51
  FM7 = "fm7",
63
52
  FMTowns = "fmtowns",
64
53
  FPinball = "fpinball",
@@ -74,12 +63,7 @@ export declare enum ZRomulatorSystemId {
74
63
  GMaster = "gmaster",
75
64
  GX4000 = "gx4000",
76
65
  Intellivision = "intellivision",
77
- J2ME = "j2me",
78
- Kodi = "kodi",
79
- Laserdisc = "laserdisc",
80
- LcdGames = "lcdgames",
81
66
  LowResNx = "lowresnx",
82
- Lutris = "lutris",
83
67
  Lutro = "lutro",
84
68
  Macintosh = "macintosh",
85
69
  Mame = "mame",
@@ -87,20 +71,16 @@ export declare enum ZRomulatorSystemId {
87
71
  Mark3 = "mark3",
88
72
  MasterSystem = "mastersystem",
89
73
  MegaCd = "megacd",
90
- MegaCdJp = "megacdjp",
91
74
  MegaDrive = "megadrive",
92
75
  MegaDriveJp = "megadrivejp",
93
76
  MegaDuck = "megaduck",
94
77
  MESS = "mess",
95
78
  Model2 = "model2",
96
79
  Model3 = "model3",
97
- Moto = "moto",
98
80
  MSX = "msx",
99
81
  MSX1 = "msx1",
100
82
  MSX2 = "msx2",
101
83
  MSXTurbor = "msxturbor",
102
- Mugen = "mugen",
103
- Multivision = "multivision",
104
84
  N3DS = "n3ds",
105
85
  Nintendo64 = "n64",
106
86
  N64DD = "n64dd",
@@ -122,14 +102,12 @@ export declare enum ZRomulatorSystemId {
122
102
  PC = "pc",
123
103
  PC88 = "pc88",
124
104
  PC98 = "pc98",
125
- PcArcade = "pcarcade",
126
105
  PcEngine = "pcengine",
127
106
  PcEngineCd = "pcenginecd",
128
107
  PCFx = "pcfx",
129
108
  Pico8 = "pico8",
130
109
  Plus4 = "plus4",
131
110
  PokeMini = "pokemini",
132
- Ports = "ports",
133
111
  PS2 = "ps2",
134
112
  PS3 = "ps3",
135
113
  PS4 = "ps4",
@@ -137,7 +115,6 @@ export declare enum ZRomulatorSystemId {
137
115
  PSVita = "psvita",
138
116
  PSX = "psx",
139
117
  PV1000 = "pv1000",
140
- Quake = "quake",
141
118
  SamCoupe = "samcoupe",
142
119
  Satellaview = "satellaview",
143
120
  Saturn = "saturn",
@@ -145,31 +122,23 @@ export declare enum ZRomulatorSystemId {
145
122
  ScummVM = "scummvm",
146
123
  SCV = "scv",
147
124
  Sega32X = "sega32x",
148
- Sega32XJp = "sega32xjp",
149
- Sega32XNa = "sega32xna",
150
125
  SegaCd = "segacd",
151
- SFC = "sfc",
152
126
  Sg1000 = "sg-1000",
153
127
  SGB = "sgb",
154
128
  SuperNintendo = "snes",
155
- SnesNa = "snesna",
156
129
  Solarus = "solarus",
157
130
  SpectraVideo = "spectravideo",
158
- Steam = "steam",
159
131
  STV = "stv",
160
132
  Sufami = "sufami",
161
133
  SuperGrafx = "supergrafx",
162
134
  SuperVision = "supervision",
163
135
  SupraCan = "supracan",
164
136
  Switch = "switch",
165
- Symbian = "symbian",
166
- TanoDragon = "tanodragon",
167
137
  TgCd = "tg-cd",
168
138
  TG16 = "tg16",
169
139
  TI99 = "ti99",
170
140
  TIC80 = "tic80",
171
141
  TO8 = "to8",
172
- Triforce = "triforce",
173
142
  TRS80 = "trs-80",
174
143
  TypeX = "type-x",
175
144
  Uzebox = "uzebox",
@@ -195,7 +164,6 @@ export declare enum ZRomulatorSystemId {
195
164
  XboxOne = "xboxone",
196
165
  ZMachine = "zmachine",
197
166
  Zx81 = "zx81",
198
- ZxNext = "zxnext",
199
167
  ZxSpectrum = "zxspectrum"
200
168
  }
201
169
  /**
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The type of media a system supports.
3
+ */
4
+ export declare enum ZRomulatorSystemMediaFormatType {
5
+ /**
6
+ * Cartridge based systems.
7
+ */
8
+ Cartridge = "cartridge",
9
+ /**
10
+ * Motherboard based systems.
11
+ *
12
+ * Usually for arcades.
13
+ */
14
+ Pcb = "pcb",
15
+ /**
16
+ * CD/DVD based systems.
17
+ */
18
+ Cd = "cd",
19
+ /**
20
+ * Floppy disk based systems.
21
+ */
22
+ FloppyDisk = "floppy-disk"
23
+ }
@@ -1,5 +1,7 @@
1
+ import { ZRomulatorSystemContentType } from './system-content-type.mjs';
2
+ import { ZRomulatorSystemHardwareType } from './system-hardware-type.mjs';
1
3
  import { ZRomulatorSystemId } from './system-id.mjs';
2
- import { ZRomulatorSystemType } from './system-type.mjs';
4
+ import { ZRomulatorSystemMediaFormatType } from './system-media-format-type.mjs';
3
5
  /**
4
6
  * Represents a system in romulator.
5
7
  *
@@ -12,8 +14,8 @@ export interface IZRomulatorSystem {
12
14
  * Unique identifier for the system.
13
15
  *
14
16
  * If you think about the directory structure
15
- * for ES-DE, for example, the id would map to
16
- * the name of the system directory.
17
+ * for ES-DE or retro-pie, for example, the id
18
+ * would map to the name of the system directory.
17
19
  *
18
20
  * This is essentially a slug.
19
21
  */
@@ -27,13 +29,45 @@ export interface IZRomulatorSystem {
27
29
  */
28
30
  name?: string;
29
31
  /**
30
- * The generational index of the system.
32
+ * The company that published the system.
31
33
  */
32
- generation?: number;
34
+ company?: string;
33
35
  /**
34
- * The type of system.
36
+ * The list of file extensions that system supports.
35
37
  */
36
- type?: ZRomulatorSystemType;
38
+ extensions?: string[];
39
+ /**
40
+ * Type classifications for the system.
41
+ */
42
+ classification?: {
43
+ /**
44
+ * What type of system the hardware is.
45
+ *
46
+ * @example 'console'
47
+ */
48
+ hardwareType?: ZRomulatorSystemHardwareType;
49
+ /**
50
+ * The type of media format.
51
+ */
52
+ mediaFormat?: ZRomulatorSystemMediaFormatType;
53
+ /**
54
+ * The digital format of the game media.
55
+ */
56
+ contentType?: ZRomulatorSystemContentType;
57
+ };
58
+ /**
59
+ * The years the system was in production until.
60
+ */
61
+ productionYears?: {
62
+ /**
63
+ * The first year the system went into production.
64
+ */
65
+ start?: number;
66
+ /**
67
+ * The year when production stopped.
68
+ */
69
+ end?: number;
70
+ };
37
71
  }
38
72
  /**
39
73
  * A builder for creating an IZRomulatorSystem.
@@ -59,51 +93,57 @@ export declare class ZRomulatorSystemBuilder {
59
93
  */
60
94
  name(name: string): this;
61
95
  /**
62
- * Sets the system type.
96
+ * Sets the system hardware type.
63
97
  *
64
98
  * @param type -
65
- * The type of system.
66
- * @returns
67
- * This instance.
68
- */
69
- type(type: ZRomulatorSystemType): this;
70
- /**
71
- * Sets the system type to console.
99
+ * The system hardware type.
72
100
  *
73
101
  * @returns
74
102
  * This instance.
75
103
  */
76
- console: () => this;
104
+ hardware(type: ZRomulatorSystemHardwareType): this;
77
105
  /**
78
- * Sets the system type to handheld.
106
+ * Sets the system media format.
107
+ *
108
+ * @param type -
109
+ * The system media format.
79
110
  *
80
111
  * @returns
81
112
  * This instance.
82
113
  */
83
- handheld: () => this;
114
+ mediaFormat(type: ZRomulatorSystemMediaFormatType): this;
84
115
  /**
85
- * Sets the system type to arcade.
116
+ * Sets the system content type.
117
+ *
118
+ * @param type -
119
+ * The system content type.
86
120
  *
87
121
  * @returns
88
122
  * This instance.
89
123
  */
90
- arcade: () => this;
124
+ contentType(type: ZRomulatorSystemContentType): this;
91
125
  /**
92
- * Sets the system type to computer.
126
+ * Sets the production run.
127
+ *
128
+ * @param start -
129
+ * The starting year of production.
130
+ * @param end -
131
+ * The last year of production.
93
132
  *
94
133
  * @returns
95
- * This instance.
134
+ * This object.
96
135
  */
97
- computer: () => this;
136
+ production(start: number, end?: number): this;
98
137
  /**
99
- * Sets the generational index of the system.
138
+ * Adds to the extension list.
139
+ *
140
+ * @param extension -
141
+ * The extension or list of extensions to add.
100
142
  *
101
- * @param generation -
102
- * The generational index of the system.
103
143
  * @returns
104
- * This instance.
144
+ * This object.
105
145
  */
106
- generation(generation: number): this;
146
+ extension(extension: string | string[]): this;
107
147
  /**
108
148
  * Assigns system data to this system.
109
149
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zthun/romulator-client",
3
- "version": "1.7.1",
3
+ "version": "1.8.0",
4
4
  "description": "A client for declaring models and invoking the romulator api",
5
5
  "author": "Anthony Bonta",
6
6
  "license": "MIT",
@@ -41,5 +41,5 @@
41
41
  "dist"
42
42
  ],
43
43
  "sideEffects": false,
44
- "gitHead": "0918366e9ee8dd282893990fbfcf1bf3e976202e"
44
+ "gitHead": "8226acacacdd44e65e7f63564c89118e727a66d8"
45
45
  }