diff --git a/js/common-vsm/model/LauncherMechanism.ts b/js/common-vsm/model/LauncherMechanism.ts index 4a1b4ce..0012dfa 100644 --- a/js/common-vsm/model/LauncherMechanism.ts +++ b/js/common-vsm/model/LauncherMechanism.ts @@ -60,7 +60,7 @@ export default class LauncherMechanism extends PhetioObject { * at startup and exist for the lifetime of the simulation, it implements 'Reference type serialization', as described in the * Serialization section of https://github.com/phetsims/phet-io/blob/main/doc/phet-io-instrumentation-technical-guide.md#serialization */ - public static LauncherMechanismIO = new IOType( 'LauncherMechanismIO', { + public static readonly LauncherMechanismIO = new IOType( 'LauncherMechanismIO', { valueType: LauncherMechanism, documentation: 'Mechanism used to launch the projectile', supertype: ReferenceIO( IOType.ObjectIO ) diff --git a/js/common/model/Field.ts b/js/common/model/Field.ts index b36b341..6079123 100644 --- a/js/common/model/Field.ts +++ b/js/common/model/Field.ts @@ -371,7 +371,7 @@ export default abstract class Field extends PhetioObject { * In this simulation, the data and statistical measures are computed solely based on the landedProjectiles, so the * serialization separates the projectiles into the airborne vs landed projectiles. */ - public static FieldIO = new IOType( 'FieldIO', { + public static readonly FieldIO = new IOType( 'FieldIO', { valueType: Field, documentation: 'A field in the Projectile Data Lab. This contains the state for the projectiles, separated into airborne and landed projectiles.', defaultDeserializationMethod: 'applyState', diff --git a/js/common/model/Projectile.ts b/js/common/model/Projectile.ts index 18f8ce9..5c0cb8b 100644 --- a/js/common/model/Projectile.ts +++ b/js/common/model/Projectile.ts @@ -140,7 +140,7 @@ export default class Projectile { * calls ProjectileIO.toStateObject to serialize the Projectile instances using value-based serialization (and vice- * versa for fromStateObject). */ - public static ProjectileIO = new IOType( 'ProjectileIO', { + public static readonly ProjectileIO = new IOType( 'ProjectileIO', { valueType: Projectile, stateSchema: { screenIdentifier: StringUnionIO( ScreenIdentifierValues ), diff --git a/js/common/model/ProjectileType.ts b/js/common/model/ProjectileType.ts index 15f32de..b4c6786 100644 --- a/js/common/model/ProjectileType.ts +++ b/js/common/model/ProjectileType.ts @@ -41,7 +41,7 @@ export default class ProjectileType extends PhetioObject { * at startup and exist for the lifetime of the simulation, it implements 'Reference type serialization', as described in the * Serialization section of https://github.com/phetsims/phet-io/blob/main/doc/phet-io-instrumentation-technical-guide.md#serialization */ - public static ProjectileTypeIO = new IOType( 'ProjectileTypeIO', { + public static readonly ProjectileTypeIO = new IOType( 'ProjectileTypeIO', { valueType: ProjectileType, documentation: 'The type of object being launched.', supertype: ReferenceIO( IOType.ObjectIO )