Skip to content

Commit

Permalink
add readonly to public static fields, phetsims/tandem#278
Browse files Browse the repository at this point in the history
  • Loading branch information
pixelzoom committed Dec 1, 2022
1 parent b6c08aa commit a805519
Show file tree
Hide file tree
Showing 8 changed files with 37 additions and 37 deletions.
16 changes: 8 additions & 8 deletions js/common/model/ConcentrationModel.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,24 +39,24 @@ assert && assert( CLOUD_VISIBLE_REFLECTIVITY <= 1, `invalid reflectivity value f
// An enumeration for how concentration can be controlled, either by direct value or by selecting a value for Earth's
// concentration at a particular date.
class ConcentrationControlMode extends EnumerationValue {
public static BY_VALUE = new ConcentrationControlMode();
public static BY_DATE = new ConcentrationControlMode();
public static readonly BY_VALUE = new ConcentrationControlMode();
public static readonly BY_DATE = new ConcentrationControlMode();

// Gets a list of keys, values and mapping between them. For use in EnumerationProperty and PhET-iO
public static enumeration = new Enumeration( ConcentrationControlMode, {
public static readonly enumeration = new Enumeration( ConcentrationControlMode, {
phetioDocumentation: 'Describes the mode by which concentration is controlled, either by date or by value.'
} );
}

// dates with recorded values of greenhouse concentration
class ConcentrationDate extends EnumerationValue {
public static ICE_AGE = new ConcentrationDate();
public static SEVENTEEN_FIFTY = new ConcentrationDate();
public static NINETEEN_FIFTY = new ConcentrationDate();
public static TWENTY_TWENTY = new ConcentrationDate();
public static readonly ICE_AGE = new ConcentrationDate();
public static readonly SEVENTEEN_FIFTY = new ConcentrationDate();
public static readonly NINETEEN_FIFTY = new ConcentrationDate();
public static readonly TWENTY_TWENTY = new ConcentrationDate();

// Gets a list of keys, values and mapping between them. For use in EnumerationProperty and PhET-iO
public static enumeration = new Enumeration( ConcentrationDate, {
public static readonly enumeration = new Enumeration( ConcentrationDate, {
phetioDocumentation: 'Various time periods or years that can be used to define what greenhouse concentration value is ued.'
} );
}
Expand Down
6 changes: 3 additions & 3 deletions js/common/model/EnergyAbsorbingEmittingLayer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@ class Substance extends EnumerationValue {
this.radiationDirections = radiationDirections;
}

public static GLASS = new Substance( 2500, 840, [ EnergyDirection.UP, EnergyDirection.DOWN ] );
public static EARTH = new Substance( 1250, 1250, [ EnergyDirection.UP ] );
public static readonly GLASS = new Substance( 2500, 840, [ EnergyDirection.UP, EnergyDirection.DOWN ] );
public static readonly EARTH = new Substance( 1250, 1250, [ EnergyDirection.UP ] );

public static enumeration = new Enumeration( Substance );
public static readonly enumeration = new Enumeration( Substance );
}

// The size of the energy absorbing layers are all the same in the Greenhouse Effect sim and are not parameterized.
Expand Down
14 changes: 7 additions & 7 deletions js/common/model/EnergyDirection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,32 +15,32 @@ const UP_VECTOR = new Vector2( 0, 1 );
const DOWN_VECTOR = new Vector2( 0, -1 );

class EnergyDirection extends EnumerationValue {
public static UP = new EnergyDirection();
public static DOWN = new EnergyDirection();
public static readonly UP = new EnergyDirection();
public static readonly DOWN = new EnergyDirection();

/**
* Get a vector corresponding to the provided enum value.
*/
public static toVector = ( enumValue: EnergyDirection ): Vector2 => {
public static toVector( enumValue: EnergyDirection ): Vector2 {
if ( enumValue === EnergyDirection.UP ) {
return UP_VECTOR;
}
else {
assert && assert( enumValue === EnergyDirection.DOWN, 'illegal direction' );
return DOWN_VECTOR;
}
};
}

/**
* Get the opposite of the provided direction.
*/
public static getOpposite = ( enumValue: EnergyDirection ): EnergyDirection => {
public static getOpposite( enumValue: EnergyDirection ): EnergyDirection {
return enumValue === EnergyDirection.UP ?
EnergyDirection.DOWN :
EnergyDirection.UP;
};
}

public static enumeration = new Enumeration( EnergyDirection );
public static readonly enumeration = new Enumeration( EnergyDirection );
}

greenhouseEffect.register( 'EnergyDirection', EnergyDirection );
Expand Down
6 changes: 3 additions & 3 deletions js/common/model/Photon.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@ const SUPPORTED_WAVELENGTHS = [ IR_WAVELENGTH, VISIBLE_WAVELENGTH ];

// types and enumerations
class ShowState extends EnumerationValue {
public static ALWAYS = new ShowState();
public static ONLY_IN_MORE_PHOTONS_MODE = new ShowState();
public static readonly ALWAYS = new ShowState();
public static readonly ONLY_IN_MORE_PHOTONS_MODE = new ShowState();

public static enumeration = new Enumeration( ShowState );
public static readonly enumeration = new Enumeration( ShowState );
}

export type PhotonOptions = {
Expand Down
12 changes: 6 additions & 6 deletions js/common/model/PhotonAbsorbingEmittingLayer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ import Photon from './Photon.js';

// enum that enumerates the possible results when testing whether a photon crossed a layer
class PhotonCrossingTestResult extends EnumerationValue {
public static FULLY_ABOVE = new PhotonCrossingTestResult();
public static FULLY_BELOW = new PhotonCrossingTestResult();
public static CROSSED_BUT_IGNORED = new PhotonCrossingTestResult();
public static CROSSED_AND_ABSORBED = new PhotonCrossingTestResult();
public static NONE = new PhotonCrossingTestResult();
public static readonly FULLY_ABOVE = new PhotonCrossingTestResult();
public static readonly FULLY_BELOW = new PhotonCrossingTestResult();
public static readonly CROSSED_BUT_IGNORED = new PhotonCrossingTestResult();
public static readonly CROSSED_AND_ABSORBED = new PhotonCrossingTestResult();
public static readonly NONE = new PhotonCrossingTestResult();

public static enumeration = new Enumeration( PhotonCrossingTestResult );
public static readonly enumeration = new Enumeration( PhotonCrossingTestResult );
}

type PhotonAbsorbingEmittingLayerOptions = {
Expand Down
8 changes: 4 additions & 4 deletions js/common/model/TemperatureUnits.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ import greenhouseEffect from '../../greenhouseEffect.js';
*/

class TemperatureUnits extends EnumerationValue {
public static KELVIN = new TemperatureUnits();
public static CELSIUS = new TemperatureUnits();
public static FAHRENHEIT = new TemperatureUnits();
public static readonly KELVIN = new TemperatureUnits();
public static readonly CELSIUS = new TemperatureUnits();
public static readonly FAHRENHEIT = new TemperatureUnits();

// Gets a list of keys, values and mapping between them. For use in EnumerationProperty and PhET-iO
public static enumeration = new Enumeration( TemperatureUnits, {
public static readonly enumeration = new Enumeration( TemperatureUnits, {
phetioDocumentation: 'Describes the type of the mammal.'
} );
}
Expand Down
6 changes: 3 additions & 3 deletions js/common/view/EnergyLegend.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,9 @@ const PANEL_MARGIN = 8;

// The legend can display photon or wave representation of energy, see energyRepresentation option
class EnergyRepresentation extends EnumerationValue {
public static PHOTON = new EnergyRepresentation();
public static WAVE = new EnergyRepresentation();
public static enumeration = new Enumeration( EnergyRepresentation );
public static readonly PHOTON = new EnergyRepresentation();
public static readonly WAVE = new EnergyRepresentation();
public static readonly enumeration = new Enumeration( EnergyRepresentation );
}

type SelfOptions = {
Expand Down
6 changes: 3 additions & 3 deletions js/common/view/ThermometerAndReadout.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,10 @@ const celsiusUnitsStringProperty = GreenhouseEffectStrings.temperature.units.cel
const fahrenheitUnitsStringProperty = GreenhouseEffectStrings.temperature.units.fahrenheitStringProperty;

class ReadoutType extends EnumerationValue {
public static SELECTABLE = new ReadoutType();
public static FIXED = new ReadoutType();
public static readonly SELECTABLE = new ReadoutType();
public static readonly FIXED = new ReadoutType();

public static enumeration = new Enumeration( ReadoutType );
public static readonly enumeration = new Enumeration( ReadoutType );
}

type SelfOptions = {
Expand Down

0 comments on commit a805519

Please sign in to comment.