circuit-construction-kit-common
diff --git a/circuit-construction-kit-common_en.html b/circuit-construction-kit-common_en.html
index 04dcf8955..85c668502 100644
--- a/circuit-construction-kit-common_en.html
+++ b/circuit-construction-kit-common_en.html
@@ -5,7 +5,7 @@
-
+
circuit-construction-kit-common
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 54153ffbc..b0bf63362 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -7,7 +7,7 @@
* @author Michael Kauzmann (PhET Interactive Simulations)
*/
-import simEslintConfig from '../chipper/eslint/sim.eslint.config.mjs';
+import simEslintConfig from '../perennial-alias/js/eslint/config/sim.eslint.config.mjs';
export default [
...simEslintConfig
diff --git a/js/model/analysis/LTACircuitTests.ts b/js/model/analysis/LTACircuitTests.ts
index 741b7d309..33bcca779 100644
--- a/js/model/analysis/LTACircuitTests.ts
+++ b/js/model/analysis/LTACircuitTests.ts
@@ -33,16 +33,11 @@ const iterateCapacitor = ( circuit: LTACircuit, resistor: MNAResistor, v: number
const expectedVoltage = v * Math.exp( -( t + dt ) / r / c );
const error = Math.abs( actualVoltage - expectedVoltage );
- // console.log( expectedVoltage, actualVoltage );
- // console.log( error );
if ( error > worstError ) {
worstError = error;
// console.log( 'new worst error: ' + worstError );
}
- // window.string = window.string + `${v} ${r} ${c} ${t} ${desiredVoltageAtTPlusDT} ${voltage} ${error}
-// `;
-
const fractionalError = error / expectedVoltage;
// console.log( fractionalError, error );
if ( error > 1E-8 ) {
@@ -115,14 +110,14 @@ QUnit.test( 'test RC Circuit should have voltage exponentially decay with T RC f
QUnit.test( 'test RC Circuit with series capacitors', assert => {
testVRCCircuitSeriesCapacitors( 3, 7, 10, 10, assert );
for ( let i = 0; i < 10; i++ ) {
- testVRCCircuitSeriesCapacitors( 3, 7, Math.random() * 10, Math.random() * 10, assert ); // eslint-disable-line phet/bad-sim-text, phet/bad-sim-text
+ testVRCCircuitSeriesCapacitors( 3, 7, Math.random() * 10 + 0.1, Math.random() * 10 + 0.1, assert ); // eslint-disable-line phet/bad-sim-text, phet/bad-sim-text
}
} );
QUnit.test( 'test RC Circuit with parallel capacitors', assert => {
testVRCCircuitParallelCapacitors( 3, 7, 10, 10, assert );
for ( let i = 0; i < 10; i++ ) {
- testVRCCircuitParallelCapacitors( 3, 7, Math.random() * 10, Math.random() * 10, assert ); // eslint-disable-line phet/bad-sim-text, phet/bad-sim-text
+ testVRCCircuitParallelCapacitors( 3, 7, Math.random() * 10 + 0.1, Math.random() * 10 + 0.1, assert ); // eslint-disable-line phet/bad-sim-text, phet/bad-sim-text
}
} );
@@ -133,7 +128,6 @@ const iterateInductor = ( circuit: LTACircuit, resistor: MNAResistor, V: number,
const actualCurrent = solution!.getCurrent( resistor );
const expectedCurrent = -V / R * ( 1 - Math.exp( -( t + dt ) * R / L ) );//positive, by definition of MNA.Battery
- // console.log( expectedCurrent, actualCurrent );
const error = Math.abs( actualCurrent - expectedCurrent );
const fractionalError = error / expectedCurrent;
@@ -141,7 +135,6 @@ const iterateInductor = ( circuit: LTACircuit, resistor: MNAResistor, V: number,
assert.ok( fractionalError <= 0.02 );
}
// assert.ok( error < errorThreshold );
- // assert.ok( true );
circuit = circuit.updateWithSubdivisions( dt );
}
};
diff --git a/js/model/analysis/mna/MNASolution.ts b/js/model/analysis/mna/MNASolution.ts
index d84e246a6..3d2e913fb 100644
--- a/js/model/analysis/mna/MNASolution.ts
+++ b/js/model/analysis/mna/MNASolution.ts
@@ -1,4 +1,4 @@
-// Copyright 2015-2022, University of Colorado Boulder
+// Copyright 2015-2024, University of Colorado Boulder
/**
* Sparse solution containing the solved variables from MNACircuit. * No listeners are attached and hence no dispose implementation is necessary.
@@ -6,6 +6,7 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+/* global Assert */
import circuitConstructionKitCommon from '../../../circuitConstructionKitCommon.js';
import MNACircuitElement from './MNACircuitElement.js';
import MNAResistor from './MNAResistor.js';
diff --git a/js/view/ACVoltageNode.ts b/js/view/ACVoltageNode.ts
index ae00f3ba1..5ed72ae1c 100644
--- a/js/view/ACVoltageNode.ts
+++ b/js/view/ACVoltageNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* Renders the lifelike/schematic view for a ACVoltage.
@@ -9,6 +9,7 @@
import Property from '../../../axon/js/Property.js';
import Dimension2 from '../../../dot/js/Dimension2.js';
import { Shape } from '../../../kite/js/imports.js';
+import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
import MinusNode from '../../../scenery-phet/js/MinusNode.js';
import PlusNode from '../../../scenery-phet/js/PlusNode.js';
import { Circle, Node, Path } from '../../../scenery/js/imports.js';
@@ -16,11 +17,10 @@ import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import ACVoltage from '../model/ACVoltage.js';
-import FixedCircuitElementNode, { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
+import CircuitElementViewType from '../model/CircuitElementViewType.js';
import CCKCScreenView from './CCKCScreenView.js';
import CircuitNode from './CircuitNode.js';
-import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
+import FixedCircuitElementNode, { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
// constants
const sineCurveShape = new Shape();
diff --git a/js/view/AdvancedAccordionBox.ts b/js/view/AdvancedAccordionBox.ts
index 9faa853b8..54573fa39 100644
--- a/js/view/AdvancedAccordionBox.ts
+++ b/js/view/AdvancedAccordionBox.ts
@@ -1,4 +1,4 @@
-// Copyright 2020-2023, University of Colorado Boulder
+// Copyright 2020-2024, University of Colorado Boulder
/**
* Advanced control panel that appears in "Lab" screens which allows the user to adjust the resistivity of wires
@@ -7,20 +7,20 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
+import optionize, { combineOptions } from '../../../phet-core/js/optionize.js';
import { AlignGroup, Node, Text, VBox } from '../../../scenery/js/imports.js';
+import { CheckboxOptions } from '../../../sun/js/Checkbox.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
+import Circuit from '../model/Circuit.js';
import CCKCAccordionBox, { CCKCAccordionBoxOptions } from './CCKCAccordionBox.js';
import CCKCCheckbox from './CCKCCheckbox.js';
+import CCKCColors from './CCKCColors.js';
import SourceResistanceControl from './SourceResistanceControl.js';
import WireResistivityControl from './WireResistivityControl.js';
-import Circuit from '../model/Circuit.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import optionize, { combineOptions } from '../../../phet-core/js/optionize.js';
-import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
-import { CheckboxOptions } from '../../../sun/js/Checkbox.js';
-import CCKCColors from './CCKCColors.js';
type SelfOptions = {
showRealBulbsCheckbox?: boolean;
diff --git a/js/view/AmmeterNode.ts b/js/view/AmmeterNode.ts
index 46b453226..82f0df4b1 100644
--- a/js/view/AmmeterNode.ts
+++ b/js/view/AmmeterNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* The user interface component with a single probe which reads current values from Wires (not from Vertex or
@@ -9,8 +9,12 @@
import BooleanProperty from '../../../axon/js/BooleanProperty.js';
import DerivedProperty from '../../../axon/js/DerivedProperty.js';
+import DerivedStringProperty from '../../../axon/js/DerivedStringProperty.js';
+import Property from '../../../axon/js/Property.js';
+import Bounds2 from '../../../dot/js/Bounds2.js';
import Vector2 from '../../../dot/js/Vector2.js';
import Vector2Property from '../../../dot/js/Vector2Property.js';
+import optionize from '../../../phet-core/js/optionize.js';
import ProbeNode from '../../../scenery-phet/js/ProbeNode.js';
import WireNode from '../../../scenery-phet/js/WireNode.js';
import { Color, DragListener, Image, Node, NodeOptions, PressListenerEvent, Rectangle, Text } from '../../../scenery/js/imports.js';
@@ -18,16 +22,12 @@ import Tandem from '../../../tandem/js/Tandem.js';
import ammeterBody_png from '../../images/ammeterBody_png.js';
import CCKCConstants from '../CCKCConstants.js';
import CCKCUtils from '../CCKCUtils.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import ProbeTextNode from './ProbeTextNode.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import Ammeter from '../model/Ammeter.js';
-import CircuitNode from './CircuitNode.js';
-import Bounds2 from '../../../dot/js/Bounds2.js';
-import Property from '../../../axon/js/Property.js';
import ammeterReadoutTypeProperty from './ammeterReadoutTypeProperty.js';
-import optionize from '../../../phet-core/js/optionize.js';
-import DerivedStringProperty from '../../../axon/js/DerivedStringProperty.js';
+import CircuitNode from './CircuitNode.js';
+import ProbeTextNode from './ProbeTextNode.js';
const currentStringProperty = CircuitConstructionKitCommonStrings.currentStringProperty;
diff --git a/js/view/BatteryNode.ts b/js/view/BatteryNode.ts
index 28d93d556..661832187 100644
--- a/js/view/BatteryNode.ts
+++ b/js/view/BatteryNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2015-2023, University of Colorado Boulder
+// Copyright 2015-2024, University of Colorado Boulder
/**
* Renders the lifelike/schematic view for a Battery.
@@ -12,8 +12,8 @@ import { Shape } from '../../../kite/js/imports.js';
import { combineOptions } from '../../../phet-core/js/optionize.js';
import { Color, Image, Path } from '../../../scenery/js/imports.js';
import Tandem from '../../../tandem/js/Tandem.js';
-import batteryHigh_png from '../../images/batteryHigh_png.js';
import battery_png from '../../images/battery_png.js';
+import batteryHigh_png from '../../images/batteryHigh_png.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Battery from '../model/Battery.js';
diff --git a/js/view/BatteryReverseButton.ts b/js/view/BatteryReverseButton.ts
index f70e08ef8..580340fc7 100644
--- a/js/view/BatteryReverseButton.ts
+++ b/js/view/BatteryReverseButton.ts
@@ -1,4 +1,4 @@
-// Copyright 2017-2023, University of Colorado Boulder
+// Copyright 2017-2024, University of Colorado Boulder
/**
* Button that reverses a battery.
@@ -6,14 +6,14 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
import { Color, Path, VBox } from '../../../scenery/js/imports.js';
import syncAltSolidString from '../../../sherpa/js/fontawesome-5/syncAltSolidString.js';
+import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Battery from '../model/Battery.js';
-import CCKCRoundPushButton from './CCKCRoundPushButton.js';
import Circuit from '../model/Circuit.js';
-import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
-import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
+import CCKCRoundPushButton from './CCKCRoundPushButton.js';
// constants
const ARROW_ICON_SCALE = 0.035;
diff --git a/js/view/CCKCChartNode.ts b/js/view/CCKCChartNode.ts
index f85b3f593..7280f26aa 100644
--- a/js/view/CCKCChartNode.ts
+++ b/js/view/CCKCChartNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* Provides simulation-specific values and customizations to display time-series data in a chart.
@@ -6,22 +6,29 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import { ObservableArray } from '../../../axon/js/createObservableArray.js';
import DerivedProperty from '../../../axon/js/DerivedProperty.js';
import Emitter from '../../../axon/js/Emitter.js';
import NumberProperty from '../../../axon/js/NumberProperty.js';
+import Property from '../../../axon/js/Property.js';
+import TEmitter from '../../../axon/js/TEmitter.js';
+import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
+import CanvasGridLineSet from '../../../bamboo/js/CanvasGridLineSet.js';
import CanvasLinePlot from '../../../bamboo/js/CanvasLinePlot.js';
import ChartCanvasNode from '../../../bamboo/js/ChartCanvasNode.js';
import ChartRectangle from '../../../bamboo/js/ChartRectangle.js';
import ChartTransform from '../../../bamboo/js/ChartTransform.js';
-import CanvasGridLineSet from '../../../bamboo/js/CanvasGridLineSet.js';
-import TickLabelSet from '../../../bamboo/js/TickLabelSet.js';
import ScatterPlot from '../../../bamboo/js/ScatterPlot.js';
import SpanNode from '../../../bamboo/js/SpanNode.js';
+import TickLabelSet from '../../../bamboo/js/TickLabelSet.js';
+import Bounds2 from '../../../dot/js/Bounds2.js';
import Range from '../../../dot/js/Range.js';
import Utils from '../../../dot/js/Utils.js';
import Vector2 from '../../../dot/js/Vector2.js';
import Vector2Property from '../../../dot/js/Vector2Property.js';
+import optionize from '../../../phet-core/js/optionize.js';
import Orientation from '../../../phet-core/js/Orientation.js';
+import PickRequired from '../../../phet-core/js/types/PickRequired.js';
import MagnifyingGlassZoomButtonGroup from '../../../scenery-phet/js/MagnifyingGlassZoomButtonGroup.js';
import ShadedRectangle from '../../../scenery-phet/js/ShadedRectangle.js';
import WireNode from '../../../scenery-phet/js/WireNode.js';
@@ -33,15 +40,8 @@ import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import Meter from '../model/Meter.js';
import CCKCProbeNode from './CCKCProbeNode.js';
-import CircuitNode from './CircuitNode.js';
-import Property from '../../../axon/js/Property.js';
-import Bounds2 from '../../../dot/js/Bounds2.js';
import CCKCScreenView from './CCKCScreenView.js';
-import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
-import { ObservableArray } from '../../../axon/js/createObservableArray.js';
-import optionize from '../../../phet-core/js/optionize.js';
-import PickRequired from '../../../phet-core/js/types/PickRequired.js';
-import TEmitter from '../../../axon/js/TEmitter.js';
+import CircuitNode from './CircuitNode.js';
const oneSecondStringProperty = CircuitConstructionKitCommonStrings.oneSecondStringProperty;
const timeStringProperty = CircuitConstructionKitCommonStrings.timeStringProperty;
diff --git a/js/view/CCKCCheckbox.ts b/js/view/CCKCCheckbox.ts
index 8ff3b6a81..28113cc7d 100644
--- a/js/view/CCKCCheckbox.ts
+++ b/js/view/CCKCCheckbox.ts
@@ -1,15 +1,15 @@
-// Copyright 2021-2022, University of Colorado Boulder
+// Copyright 2021-2024, University of Colorado Boulder
/**
* Checkbox styled for CCK
* @author Sam Reid (PhET Interactive Simulations)
*/
-import Checkbox, { CheckboxOptions } from '../../../sun/js/Checkbox.js';
-import { Node } from '../../../scenery/js/imports.js';
-import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Property from '../../../axon/js/Property.js';
import { combineOptions } from '../../../phet-core/js/optionize.js';
+import { Node } from '../../../scenery/js/imports.js';
+import Checkbox, { CheckboxOptions } from '../../../sun/js/Checkbox.js';
+import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
// constants
const BOX_WIDTH = 16;
diff --git a/js/view/CCKCColors.ts b/js/view/CCKCColors.ts
index d498a8475..4d7a72136 100644
--- a/js/view/CCKCColors.ts
+++ b/js/view/CCKCColors.ts
@@ -8,8 +8,8 @@
*/
import { ProfileColorProperty } from '../../../scenery/js/imports.js';
-import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Tandem from '../../../tandem/js/Tandem.js';
+import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
const tandem = Tandem.COLORS;
diff --git a/js/view/CCKCLightBulbNode.ts b/js/view/CCKCLightBulbNode.ts
index e4f8aed0e..1f967cbb4 100644
--- a/js/view/CCKCLightBulbNode.ts
+++ b/js/view/CCKCLightBulbNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2015-2023, University of Colorado Boulder
+// Copyright 2015-2024, University of Colorado Boulder
/**
* Named CCKCLightBulbNode to avoid collisions with SCENERY_PHET/LightBulbNode. Renders the bulb shape
@@ -7,31 +7,31 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import Multilink from '../../../axon/js/Multilink.js';
import NumberProperty from '../../../axon/js/NumberProperty.js';
import Property from '../../../axon/js/Property.js';
import Matrix3 from '../../../dot/js/Matrix3.js';
import Utils from '../../../dot/js/Utils.js';
import Vector2 from '../../../dot/js/Vector2.js';
import { Shape } from '../../../kite/js/imports.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import { Color, Image, Node, Path } from '../../../scenery/js/imports.js';
-import lightBulbMiddleHigh_png from '../../mipmaps/lightBulbMiddleHigh_png.js';
-import lightBulbMiddleReal_png from '../../mipmaps/lightBulbMiddleReal_png.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import lightBulbFrontReal_png from '../../images/lightBulbFrontReal_png.js';
import lightBulbMiddle_png from '../../mipmaps/lightBulbMiddle_png.js';
+import lightBulbMiddleHigh_png from '../../mipmaps/lightBulbMiddleHigh_png.js';
+import lightBulbMiddleReal_png from '../../mipmaps/lightBulbMiddleReal_png.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitElementViewType from '../model/CircuitElementViewType.js';
+import LightBulb from '../model/LightBulb.js';
+import CCKCScreenView from './CCKCScreenView.js';
+import CircuitNode from './CircuitNode.js';
import CustomLightBulbNode from './CustomLightBulbNode.js';
import FixedCircuitElementNode, { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
import LightBulbSocketNode from './LightBulbSocketNode.js';
-import schematicTypeProperty from './schematicTypeProperty.js';
-import CCKCScreenView from './CCKCScreenView.js';
-import CircuitNode from './CircuitNode.js';
-import LightBulb from '../model/LightBulb.js';
-import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import Tandem from '../../../tandem/js/Tandem.js';
import SchematicType from './SchematicType.js';
-import Multilink from '../../../axon/js/Multilink.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
+import schematicTypeProperty from './schematicTypeProperty.js';
// constants
const SCRATCH_MATRIX = new Matrix3();
diff --git a/js/view/CCKCPanel.ts b/js/view/CCKCPanel.ts
index adef8f73a..74c64e92b 100644
--- a/js/view/CCKCPanel.ts
+++ b/js/view/CCKCPanel.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* Parent class for the panels in CCK so they have similar look and feel.
@@ -6,12 +6,12 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import { combineOptions } from '../../../phet-core/js/optionize.js';
+import { Node } from '../../../scenery/js/imports.js';
import Panel, { PanelOptions } from '../../../sun/js/Panel.js';
import Tandem from '../../../tandem/js/Tandem.js';
-import { Node } from '../../../scenery/js/imports.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
import CCKCColors from './CCKCColors.js';
export type CCKCPanelOptions = PanelOptions;
diff --git a/js/view/CCKCProbeNode.ts b/js/view/CCKCProbeNode.ts
index 9499b349c..776b6b953 100644
--- a/js/view/CCKCProbeNode.ts
+++ b/js/view/CCKCProbeNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* One probe for the WaveMeterNode
@@ -8,12 +8,12 @@
import Property from '../../../axon/js/Property.js';
import Bounds2 from '../../../dot/js/Bounds2.js';
-import { DragListener, Node } from '../../../scenery/js/imports.js';
-import ProbeNode, { ProbeNodeOptions } from '../../../scenery-phet/js/ProbeNode.js';
-import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import Vector2Property from '../../../dot/js/Vector2Property.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import Vector2Property from '../../../dot/js/Vector2Property.js';
import optionize from '../../../phet-core/js/optionize.js';
+import ProbeNode, { ProbeNodeOptions } from '../../../scenery-phet/js/ProbeNode.js';
+import { DragListener, Node } from '../../../scenery/js/imports.js';
+import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
type SelfOptions = {
drag?: () => void;
diff --git a/js/view/CCKCScreenView.ts b/js/view/CCKCScreenView.ts
index 3939c2a67..762b3b154 100644
--- a/js/view/CCKCScreenView.ts
+++ b/js/view/CCKCScreenView.ts
@@ -9,25 +9,32 @@
import Multilink from '../../../axon/js/Multilink.js';
import NumberProperty from '../../../axon/js/NumberProperty.js';
+import Property from '../../../axon/js/Property.js';
import Bounds2 from '../../../dot/js/Bounds2.js';
import Vector2 from '../../../dot/js/Vector2.js';
import ScreenView, { ScreenViewOptions } from '../../../joist/js/ScreenView.js';
import optionize from '../../../phet-core/js/optionize.js';
+import StrictOmit from '../../../phet-core/js/types/StrictOmit.js';
import PlayPauseButton from '../../../scenery-phet/js/buttons/PlayPauseButton.js';
import ResetAllButton from '../../../scenery-phet/js/buttons/ResetAllButton.js';
import StopwatchNode from '../../../scenery-phet/js/StopwatchNode.js';
import TimeControlNode from '../../../scenery-phet/js/TimeControlNode.js';
import { AlignBox, AlignGroup, HotkeyData, KeyboardListener, KeyboardUtils, Node, VBox } from '../../../scenery/js/imports.js';
import { CarouselItem } from '../../../sun/js/Carousel.js';
+import phetioStateSetEmitter from '../../../tandem/js/phetioStateSetEmitter.js';
import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
import CCKCQueryParameters from '../CCKCQueryParameters.js';
+import CCKCUtils from '../CCKCUtils.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import CircuitConstructionKitModel from '../model/CircuitConstructionKitModel.js';
+import CircuitElement from '../model/CircuitElement.js';
import SeriesAmmeter from '../model/SeriesAmmeter.js';
+import Vertex from '../model/Vertex.js';
import AdvancedAccordionBox from './AdvancedAccordionBox.js';
import AmmeterNode from './AmmeterNode.js';
+import CCKCZoomButtonGroup from './CCKCZoomButtonGroup.js';
import ChargeSpeedThrottlingReadoutNode from './ChargeSpeedThrottlingReadoutNode.js';
import CircuitElementEditContainerNode from './CircuitElementEditContainerNode.js';
import CircuitElementNode from './CircuitElementNode.js';
@@ -35,6 +42,7 @@ import CircuitElementToolbox, { CircuitElementToolboxOptions } from './CircuitEl
import CircuitNode from './CircuitNode.js';
import CurrentChartNode from './CurrentChartNode.js';
import DisplayOptionsPanel from './DisplayOptionsPanel.js';
+import FixedCircuitElementNode from './FixedCircuitElementNode.js';
import SensorToolbox from './SensorToolbox.js';
import ViewRadioButtonGroup from './ViewRadioButtonGroup.js';
import VoltageChartNode from './VoltageChartNode.js';
diff --git a/js/view/CCKCTrashButton.ts b/js/view/CCKCTrashButton.ts
index b33371655..c8b2a3ac3 100644
--- a/js/view/CCKCTrashButton.ts
+++ b/js/view/CCKCTrashButton.ts
@@ -1,4 +1,4 @@
-// Copyright 2017-2023, University of Colorado Boulder
+// Copyright 2017-2024, University of Colorado Boulder
/**
* Trash button that is used to delete components.
@@ -6,16 +6,16 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import { Path } from '../../../scenery/js/imports.js';
import trashAltRegularShape from '../../../sherpa/js/fontawesome-5/trashAltRegularShape.js';
+import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import CCKCRoundPushButton from './CCKCRoundPushButton.js';
import Circuit from '../model/Circuit.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
import CircuitElement from '../model/CircuitElement.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
+import CCKCRoundPushButton from './CCKCRoundPushButton.js';
export default class CCKCTrashButton extends CCKCRoundPushButton {
diff --git a/js/view/ChargeNode.ts b/js/view/ChargeNode.ts
index 033283480..770e3ea28 100644
--- a/js/view/ChargeNode.ts
+++ b/js/view/ChargeNode.ts
@@ -8,6 +8,7 @@
*/
import BooleanProperty from '../../../axon/js/BooleanProperty.js';
+import Multilink from '../../../axon/js/Multilink.js';
import Utils from '../../../dot/js/Utils.js';
import { Shape } from '../../../kite/js/imports.js';
import ElectronChargeNode from '../../../scenery-phet/js/ElectronChargeNode.js';
@@ -16,12 +17,11 @@ import Tandem from '../../../tandem/js/Tandem.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Capacitor from '../model/Capacitor.js';
import Charge from '../model/Charge.js';
-import CircuitNode from './CircuitNode.js';
-import ConventionalCurrentArrowNode from './ConventionalCurrentArrowNode.js';
-import CapacitorCircuitElementNode from './CapacitorCircuitElementNode.js';
import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import Multilink from '../../../axon/js/Multilink.js';
+import CapacitorCircuitElementNode from './CapacitorCircuitElementNode.js';
import CCKCColors from './CCKCColors.js';
+import CircuitNode from './CircuitNode.js';
+import ConventionalCurrentArrowNode from './ConventionalCurrentArrowNode.js';
// constants
const ELECTRON_CHARGE_NODE = new ElectronChargeNode( {
diff --git a/js/view/CircuitDebugLayer.ts b/js/view/CircuitDebugLayer.ts
index 1736db4f5..ad9ad02d2 100644
--- a/js/view/CircuitDebugLayer.ts
+++ b/js/view/CircuitDebugLayer.ts
@@ -10,8 +10,8 @@ import ArrowNode from '../../../scenery-phet/js/ArrowNode.js';
import { Node, Text } from '../../../scenery/js/imports.js';
import Panel from '../../../sun/js/Panel.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import CircuitNode from './CircuitNode.js';
import CurrentSense from '../model/CurrentSense.js';
+import CircuitNode from './CircuitNode.js';
export default class CircuitDebugLayer extends Node {
private readonly circuitNode: CircuitNode;
diff --git a/js/view/CircuitElementNode.ts b/js/view/CircuitElementNode.ts
index 66d24c1cb..566441c7d 100644
--- a/js/view/CircuitElementNode.ts
+++ b/js/view/CircuitElementNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* Abstract base class for WireNode and FixedCircuitElementNode
@@ -7,15 +7,15 @@
*/
import Vector2 from '../../../dot/js/Vector2.js';
+import optionize from '../../../phet-core/js/optionize.js';
import { Node, NodeOptions, PressListenerEvent } from '../../../scenery/js/imports.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Circuit from '../model/Circuit.js';
import CircuitElement from '../model/CircuitElement.js';
+import Vertex from '../model/Vertex.js';
import CCKCScreenView from './CCKCScreenView.js';
import CircuitNode from './CircuitNode.js';
-import Vertex from '../model/Vertex.js';
-import optionize from '../../../phet-core/js/optionize.js';
import CircuitNodeDragListener from './CircuitNodeDragListener.js';
type SelfOptions = {
diff --git a/js/view/CircuitElementToolNode.ts b/js/view/CircuitElementToolNode.ts
index 7a52f157e..c91f4aeaf 100644
--- a/js/view/CircuitElementToolNode.ts
+++ b/js/view/CircuitElementToolNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2017-2023, University of Colorado Boulder
+// Copyright 2017-2024, University of Colorado Boulder
/**
* An icon in the circuit element toolbox/carousel that can be used to create circuit elements. Exists for the life of
@@ -8,18 +8,18 @@
*/
import BooleanProperty from '../../../axon/js/BooleanProperty.js';
+import Multilink from '../../../axon/js/Multilink.js';
import Property from '../../../axon/js/Property.js';
import ReadOnlyProperty from '../../../axon/js/ReadOnlyProperty.js';
+import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import optionize from '../../../phet-core/js/optionize.js';
import { DragListener, Grayscale, Node, PressListenerEvent, Text, VBox, VBoxOptions } from '../../../scenery/js/imports.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Circuit from '../model/Circuit.js';
import CircuitElement from '../model/CircuitElement.js';
import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import Multilink from '../../../axon/js/Multilink.js';
-import optionize from '../../../phet-core/js/optionize.js';
-import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
import CCKCColors from './CCKCColors.js';
// constants
diff --git a/js/view/CircuitNode.ts b/js/view/CircuitNode.ts
index c53c4dcb7..9083c45f8 100644
--- a/js/view/CircuitNode.ts
+++ b/js/view/CircuitNode.ts
@@ -15,36 +15,51 @@
* @author Denzell Barnett (PhET Interactive Simulations)
*/
+import Multilink from '../../../axon/js/Multilink.js';
import Property from '../../../axon/js/Property.js';
import Bounds2 from '../../../dot/js/Bounds2.js';
import Utils from '../../../dot/js/Utils.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import DisplayClickToDismissListener from '../../../joist/js/DisplayClickToDismissListener.js';
import { Node, Path, SceneryEvent } from '../../../scenery/js/imports.js';
import scissorsShape from '../../../sherpa/js/fontawesome-4/scissorsShape.js';
import RoundPushButton from '../../../sun/js/buttons/RoundPushButton.js';
+import PhetioGroup from '../../../tandem/js/PhetioGroup.js';
import Tandem from '../../../tandem/js/Tandem.js';
import CCKCQueryParameters from '../CCKCQueryParameters.js';
-import CircuitDebugLayer from './CircuitDebugLayer.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import ACVoltage from '../model/ACVoltage.js';
+import AmmeterConnection from '../model/AmmeterConnection.js';
import Battery from '../model/Battery.js';
import Capacitor from '../model/Capacitor.js';
+import Circuit from '../model/Circuit.js';
+import CircuitConstructionKitModel from '../model/CircuitConstructionKitModel.js';
+import CircuitElement from '../model/CircuitElement.js';
+import CircuitElementViewType from '../model/CircuitElementViewType.js';
+import CurrentSense from '../model/CurrentSense.js';
+import Dog from '../model/Dog.js';
import FixedCircuitElement from '../model/FixedCircuitElement.js';
import Fuse from '../model/Fuse.js';
import Inductor from '../model/Inductor.js';
import LightBulb from '../model/LightBulb.js';
import Resistor from '../model/Resistor.js';
+import ResistorType from '../model/ResistorType.js';
import SeriesAmmeter from '../model/SeriesAmmeter.js';
import Switch from '../model/Switch.js';
+import Vertex from '../model/Vertex.js';
import VoltageConnection from '../model/VoltageConnection.js';
import Wire from '../model/Wire.js';
import ACVoltageNode from './ACVoltageNode.js';
import BatteryNode from './BatteryNode.js';
import CapacitorCircuitElementNode from './CapacitorCircuitElementNode.js';
import CCKCLightBulbNode from './CCKCLightBulbNode.js';
+import CCKCScreenView from './CCKCScreenView.js';
import ChargeNode from './ChargeNode.js';
+import CircuitDebugLayer from './CircuitDebugLayer.js';
+import CircuitElementEditContainerNode from './CircuitElementEditContainerNode.js';
import CircuitElementNode from './CircuitElementNode.js';
import CustomLightBulbNode from './CustomLightBulbNode.js';
+import DogNode from './DogNode.js';
import FixedCircuitElementNode from './FixedCircuitElementNode.js';
import FuseNode from './FuseNode.js';
import InductorNode from './InductorNode.js';
@@ -55,21 +70,6 @@ import SwitchNode from './SwitchNode.js';
import ValueNode from './ValueNode.js';
import VertexNode from './VertexNode.js';
import WireNode from './WireNode.js';
-import Circuit from '../model/Circuit.js';
-import CCKCScreenView from './CCKCScreenView.js';
-import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import CircuitElement from '../model/CircuitElement.js';
-import Vertex from '../model/Vertex.js';
-import CircuitConstructionKitModel from '../model/CircuitConstructionKitModel.js';
-import PhetioGroup from '../../../tandem/js/PhetioGroup.js';
-import CurrentSense from '../model/CurrentSense.js';
-import Multilink from '../../../axon/js/Multilink.js';
-import Dog from '../model/Dog.js';
-import DogNode from './DogNode.js';
-import ResistorType from '../model/ResistorType.js';
-import AmmeterConnection from '../model/AmmeterConnection.js';
-import CircuitElementEditContainerNode from './CircuitElementEditContainerNode.js';
-import DisplayClickToDismissListener from '../../../joist/js/DisplayClickToDismissListener.js';
// constants
// Since this sim has already been published with PhET-iO + migration support, it isn't worth changing initial indexing
diff --git a/js/view/ClearDynamicsButton.ts b/js/view/ClearDynamicsButton.ts
index ba6aeb7c2..decf9f7c5 100644
--- a/js/view/ClearDynamicsButton.ts
+++ b/js/view/ClearDynamicsButton.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* Button that clears the magnetic field from an inductor or electric field from a capacitor.
@@ -9,16 +9,16 @@
import { m3 } from '../../../dot/js/Matrix3.js';
import Vector2 from '../../../dot/js/Vector2.js';
import { Shape } from '../../../kite/js/imports.js';
+import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
import BannedNode from '../../../scenery-phet/js/BannedNode.js';
import { Color, Node, Path } from '../../../scenery/js/imports.js';
+import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import DynamicCircuitElement from '../model/DynamicCircuitElement.js';
-import CCKCRoundPushButton from './CCKCRoundPushButton.js';
import Circuit from '../model/Circuit.js';
import CircuitElement from '../model/CircuitElement.js';
+import DynamicCircuitElement from '../model/DynamicCircuitElement.js';
import Vertex from '../model/Vertex.js';
-import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
-import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
+import CCKCRoundPushButton from './CCKCRoundPushButton.js';
// constants
const SCALE = 0.032;
diff --git a/js/view/CurrentChartNode.ts b/js/view/CurrentChartNode.ts
index 21830237d..51039490c 100644
--- a/js/view/CurrentChartNode.ts
+++ b/js/view/CurrentChartNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* Shows the voltage as a function of time on a scrolling chart.
@@ -7,11 +7,15 @@
*/
import createObservableArray from '../../../axon/js/createObservableArray.js';
+import Property from '../../../axon/js/Property.js';
+import Bounds2 from '../../../dot/js/Bounds2.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
import CCKCConstants from '../CCKCConstants.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import CCKCChartNode, { CCKCChartNodeOptions } from './CCKCChartNode.js';
+import CCKCProbeNode from './CCKCProbeNode.js';
import CircuitNode from './CircuitNode.js';
import Property from '../../../axon/js/Property.js';
import Bounds2 from '../../../dot/js/Bounds2.js';
diff --git a/js/view/CustomLightBulbNode.ts b/js/view/CustomLightBulbNode.ts
index 8179f0420..588b75042 100644
--- a/js/view/CustomLightBulbNode.ts
+++ b/js/view/CustomLightBulbNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* Light bulb, made to 'glow' by modulating opacity of the 'on' image. Forked from SCENERY_PHET/LightBulbNode
@@ -14,11 +14,11 @@ import optionize from '../../../phet-core/js/optionize.js';
import LightRaysNode from '../../../scenery-phet/js/LightRaysNode.js';
import { Image, Node, NodeOptions } from '../../../scenery/js/imports.js';
import lightBulbBack_png from '../../images/lightBulbBack_png.js';
+import lightBulbFront_png from '../../images/lightBulbFront_png.js';
import lightBulbFrontHigh_png from '../../images/lightBulbFrontHigh_png.js';
import lightBulbFrontReal_png from '../../images/lightBulbFrontReal_png.js';
-import lightBulbFront_png from '../../images/lightBulbFront_png.js';
-import lightBulbMiddleReal_png from '../../mipmaps/lightBulbMiddleReal_png.js';
import lightBulbMiddle_png from '../../mipmaps/lightBulbMiddle_png.js';
+import lightBulbMiddleReal_png from '../../mipmaps/lightBulbMiddleReal_png.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
diff --git a/js/view/DisplayOptionsPanel.ts b/js/view/DisplayOptionsPanel.ts
index 587b2126e..4270b9a7f 100644
--- a/js/view/DisplayOptionsPanel.ts
+++ b/js/view/DisplayOptionsPanel.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* This control panel shows checkboxes for "Show Electrons", etc. Exists for the life of the sim and hence does not
@@ -7,21 +7,21 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import Property from '../../../axon/js/Property.js';
+import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
import ElectronChargeNode from '../../../scenery-phet/js/ElectronChargeNode.js';
-import { AlignBox, AlignGroup, HBox, Text, VBox, Node } from '../../../scenery/js/imports.js';
+import Stopwatch from '../../../scenery-phet/js/Stopwatch.js';
+import { AlignBox, AlignGroup, HBox, Node, Text, VBox } from '../../../scenery/js/imports.js';
+import VerticalAquaRadioButtonGroup from '../../../sun/js/VerticalAquaRadioButtonGroup.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
+import CurrentType from '../model/CurrentType.js';
import CCKCCheckbox from './CCKCCheckbox.js';
+import CCKCColors from './CCKCColors.js';
import CCKCPanel from './CCKCPanel.js';
import ConventionalCurrentArrowNode from './ConventionalCurrentArrowNode.js';
-import Property from '../../../axon/js/Property.js';
-import Stopwatch from '../../../scenery-phet/js/Stopwatch.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import CurrentType from '../model/CurrentType.js';
-import VerticalAquaRadioButtonGroup from '../../../sun/js/VerticalAquaRadioButtonGroup.js';
-import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
-import CCKCColors from './CCKCColors.js';
const conventionalStringProperty = CircuitConstructionKitCommonStrings.conventionalStringProperty;
const electronsStringProperty = CircuitConstructionKitCommonStrings.electronsStringProperty;
diff --git a/js/view/DogNode.ts b/js/view/DogNode.ts
index 893a4cc95..dd47318ed 100644
--- a/js/view/DogNode.ts
+++ b/js/view/DogNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2020-2023, University of Colorado Boulder
+// Copyright 2020-2024, University of Colorado Boulder
/**
* The DogNode is a ResistorNode that barks
@@ -13,12 +13,12 @@ import Tandem from '../../../tandem/js/Tandem.js';
import dogBark_mp3 from '../../sounds/dogBark_mp3.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import CircuitElementViewType from '../model/CircuitElementViewType.js';
+import Dog from '../model/Dog.js';
import BarkNode from './BarkNode.js';
import CCKCScreenView from './CCKCScreenView.js';
import CircuitNode from './CircuitNode.js';
-import ResistorNode from './ResistorNode.js';
-import Dog from '../model/Dog.js';
import { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
+import ResistorNode from './ResistorNode.js';
export default class DogNode extends ResistorNode {
private readonly barkNode: BarkNode;
diff --git a/js/view/FixedCircuitElementNode.ts b/js/view/FixedCircuitElementNode.ts
index 14cd30620..6dad8d92b 100644
--- a/js/view/FixedCircuitElementNode.ts
+++ b/js/view/FixedCircuitElementNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* Renders and provides interactivity for FixedCircuitElements (all CircuitElements except Wires).
@@ -6,28 +6,28 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import Multilink, { UnknownMultilink } from '../../../axon/js/Multilink.js';
import NumberProperty from '../../../axon/js/NumberProperty.js';
import Property from '../../../axon/js/Property.js';
+import Bounds2 from '../../../dot/js/Bounds2.js';
import Matrix3 from '../../../dot/js/Matrix3.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import optionize from '../../../phet-core/js/optionize.js';
import { Image, Node, SceneryEvent } from '../../../scenery/js/imports.js';
import Tandem from '../../../tandem/js/Tandem.js';
import fire_png from '../../images/fire_png.js';
import CCKCUtils from '../CCKCUtils.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitElement from '../model/CircuitElement.js';
import CircuitElementViewType from '../model/CircuitElementViewType.js';
import FixedCircuitElement from '../model/FixedCircuitElement.js';
import Resistor from '../model/Resistor.js';
+import Vertex from '../model/Vertex.js';
import CCKCScreenView from './CCKCScreenView.js';
import CircuitElementNode, { CircuitElementNodeOptions } from './CircuitElementNode.js';
import CircuitNode from './CircuitNode.js';
import CircuitNodeDragListener from './CircuitNodeDragListener.js';
import FixedCircuitElementHighlightNode from './FixedCircuitElementHighlightNode.js';
-import CircuitElement from '../model/CircuitElement.js';
-import Multilink, { UnknownMultilink } from '../../../axon/js/Multilink.js';
-import Bounds2 from '../../../dot/js/Bounds2.js';
-import optionize from '../../../phet-core/js/optionize.js';
-import Vertex from '../model/Vertex.js';
// constants
const matrix = new Matrix3();
diff --git a/js/view/FuseNode.ts b/js/view/FuseNode.ts
index 3d66c3acb..2a3948f19 100644
--- a/js/view/FuseNode.ts
+++ b/js/view/FuseNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* This node shows a fuse.
@@ -11,7 +11,9 @@ import Matrix3 from '../../../dot/js/Matrix3.js';
import Utils from '../../../dot/js/Utils.js';
import Vector2 from '../../../dot/js/Vector2.js';
import { Shape } from '../../../kite/js/imports.js';
+import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
import { Color, Image, Node, Path, Rectangle } from '../../../scenery/js/imports.js';
+import isSettingPhetioStateProperty from '../../../tandem/js/isSettingPhetioStateProperty.js';
import Tandem from '../../../tandem/js/Tandem.js';
import fuse_png from '../../images/fuse_png.js';
import CCKCConstants from '../CCKCConstants.js';
@@ -22,10 +24,8 @@ import CCKCScreenView from './CCKCScreenView.js';
import CircuitNode from './CircuitNode.js';
import FixedCircuitElementNode, { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
import FuseTripAnimation from './FuseTripAnimation.js';
-import schematicTypeProperty from './schematicTypeProperty.js';
import SchematicType from './SchematicType.js';
-import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
-import isSettingPhetioStateProperty from '../../../tandem/js/isSettingPhetioStateProperty.js';
+import schematicTypeProperty from './schematicTypeProperty.js';
// constants
const SCHEMATIC_STEM_WIDTH = 20;
diff --git a/js/view/FuseRepairButton.ts b/js/view/FuseRepairButton.ts
index 89571afff..ccdbbc377 100644
--- a/js/view/FuseRepairButton.ts
+++ b/js/view/FuseRepairButton.ts
@@ -8,16 +8,16 @@
import Vector2 from '../../../dot/js/Vector2.js';
import { Shape } from '../../../kite/js/imports.js';
+import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
import { Circle, Node, Path } from '../../../scenery/js/imports.js';
+import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Circuit from '../model/Circuit.js';
-import Fuse from '../model/Fuse.js';
-import CCKCRoundPushButton from './CCKCRoundPushButton.js';
import CircuitElement from '../model/CircuitElement.js';
+import Fuse from '../model/Fuse.js';
import Vertex from '../model/Vertex.js';
-import { RoundPushButtonOptions } from '../../../sun/js/buttons/RoundPushButton.js';
-import optionize, { EmptySelfOptions } from '../../../phet-core/js/optionize.js';
-import Tandem from '../../../tandem/js/Tandem.js';
+import CCKCRoundPushButton from './CCKCRoundPushButton.js';
type SelfOptions = EmptySelfOptions;
type RepairFuseButtonOptions = SelfOptions & RoundPushButtonOptions;
diff --git a/js/view/PhaseShiftControl.ts b/js/view/PhaseShiftControl.ts
index f1ec88688..6d20d9886 100644
--- a/js/view/PhaseShiftControl.ts
+++ b/js/view/PhaseShiftControl.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* Control that allows the user to change the phase of the ac voltage source on the AC Lab Screen.
@@ -7,23 +7,23 @@
*/
import BooleanProperty from '../../../axon/js/BooleanProperty.js';
+import Multilink, { UnknownMultilink } from '../../../axon/js/Multilink.js';
import Property from '../../../axon/js/Property.js';
import Range from '../../../dot/js/Range.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
+import PickRequired from '../../../phet-core/js/types/PickRequired.js';
import MathSymbols from '../../../scenery-phet/js/MathSymbols.js';
import { Text, VBox, VBoxOptions } from '../../../scenery/js/imports.js';
import NumberSpinner, { NumberSpinnerOptions } from '../../../sun/js/NumberSpinner.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
-import CircuitElementNumberControl from './CircuitElementNumberControl.js';
-import CircuitElement from '../model/CircuitElement.js';
-import Circuit from '../model/Circuit.js';
import ACVoltage from '../model/ACVoltage.js';
-import Multilink, { UnknownMultilink } from '../../../axon/js/Multilink.js';
-import PickRequired from '../../../phet-core/js/types/PickRequired.js';
+import Circuit from '../model/Circuit.js';
+import CircuitElement from '../model/CircuitElement.js';
import Vertex from '../model/Vertex.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
import CCKCColors from './CCKCColors.js';
+import CircuitElementNumberControl from './CircuitElementNumberControl.js';
type PhaseShiftControlOptions = VBoxOptions & PickRequired;
export default class PhaseShiftControl extends VBox {
diff --git a/js/view/ProbeTextNode.ts b/js/view/ProbeTextNode.ts
index 61711f407..c1329d9db 100644
--- a/js/view/ProbeTextNode.ts
+++ b/js/view/ProbeTextNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* Shows the title (above) and dynamic readout (below) for the ammeter and voltmeter.
@@ -6,15 +6,15 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
-import { Color, Node, Rectangle, Text, VBox, VBoxOptions } from '../../../scenery/js/imports.js';
-import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import MathSymbols from '../../../scenery-phet/js/MathSymbols.js';
import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
+import Bounds2 from '../../../dot/js/Bounds2.js';
import optionize from '../../../phet-core/js/optionize.js';
import StrictOmit from '../../../phet-core/js/types/StrictOmit.js';
+import MathSymbols from '../../../scenery-phet/js/MathSymbols.js';
+import { Color, Node, Rectangle, Text, VBox, VBoxOptions } from '../../../scenery/js/imports.js';
+import Tandem from '../../../tandem/js/Tandem.js';
+import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import CCKCColors from './CCKCColors.js';
-import Bounds2 from '../../../dot/js/Bounds2.js';
// constants
const TEXT_BOX_WIDTH = 140;
diff --git a/js/view/ResistorNode.ts b/js/view/ResistorNode.ts
index 10570e3c7..4501947d8 100644
--- a/js/view/ResistorNode.ts
+++ b/js/view/ResistorNode.ts
@@ -6,9 +6,11 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import DerivedProperty from '../../../axon/js/DerivedProperty.js';
import Property from '../../../axon/js/Property.js';
import Matrix3 from '../../../dot/js/Matrix3.js';
import { Shape } from '../../../kite/js/imports.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import { Color, Image, Node, Path, Rectangle } from '../../../scenery/js/imports.js';
import Tandem from '../../../tandem/js/Tandem.js';
import coin_png from '../../images/coin_png.js';
@@ -18,21 +20,19 @@ import eraser_png from '../../images/eraser_png.js';
import hand_png from '../../images/hand_png.js';
import paperClip_png from '../../images/paperClip_png.js';
import pencil_png from '../../images/pencil_png.js';
-import resistorHigh_png from '../../images/resistorHigh_png.js';
import resistor_png from '../../images/resistor_png.js';
+import resistorHigh_png from '../../images/resistorHigh_png.js';
import CCKCConstants from '../CCKCConstants.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import CircuitElementViewType from '../model/CircuitElementViewType.js';
import Resistor from '../model/Resistor.js';
+import ResistorType from '../model/ResistorType.js';
import CCKCScreenView from './CCKCScreenView.js';
import CircuitNode from './CircuitNode.js';
import FixedCircuitElementNode, { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
import ResistorColors from './ResistorColors.js';
-import schematicTypeProperty from './schematicTypeProperty.js';
import SchematicType from './SchematicType.js';
-import ResistorType from '../model/ResistorType.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
-import DerivedProperty from '../../../axon/js/DerivedProperty.js';
+import schematicTypeProperty from './schematicTypeProperty.js';
// constants
diff --git a/js/view/SensorToolbox.ts b/js/view/SensorToolbox.ts
index e022d6ff8..e967ac4f4 100644
--- a/js/view/SensorToolbox.ts
+++ b/js/view/SensorToolbox.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* This is the toolbox on the right hand side from which the voltmeter and ammeter can be dragged/dropped. Exists for
@@ -9,33 +9,33 @@
import BooleanProperty from '../../../axon/js/BooleanProperty.js';
import DerivedProperty from '../../../axon/js/DerivedProperty.js';
+import EnumerationProperty from '../../../axon/js/EnumerationProperty.js';
+import Multilink from '../../../axon/js/Multilink.js';
import NumberProperty from '../../../axon/js/NumberProperty.js';
import Property from '../../../axon/js/Property.js';
import ReadOnlyProperty from '../../../axon/js/ReadOnlyProperty.js';
import Bounds2 from '../../../dot/js/Bounds2.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import optionize from '../../../phet-core/js/optionize.js';
import { AlignGroup, DragListener, HBox, HSeparator, Node, PressListenerEvent, Rectangle, Text, VBox } from '../../../scenery/js/imports.js';
import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import Ammeter from '../model/Ammeter.js';
+import CircuitElementViewType from '../model/CircuitElementViewType.js';
import SeriesAmmeter from '../model/SeriesAmmeter.js';
import Vertex from '../model/Vertex.js';
import Voltmeter from '../model/Voltmeter.js';
import AmmeterNode from './AmmeterNode.js';
+import CCKCColors from './CCKCColors.js';
import CCKCPanel, { CCKCPanelOptions } from './CCKCPanel.js';
import CircuitElementToolNode from './CircuitElementToolNode.js';
+import CircuitNode from './CircuitNode.js';
import CurrentChartNode from './CurrentChartNode.js';
import SeriesAmmeterNode from './SeriesAmmeterNode.js';
import VoltageChartNode from './VoltageChartNode.js';
import VoltmeterNode from './VoltmeterNode.js';
-import CircuitNode from './CircuitNode.js';
-import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import EnumerationProperty from '../../../axon/js/EnumerationProperty.js';
-import Multilink from '../../../axon/js/Multilink.js';
-import optionize from '../../../phet-core/js/optionize.js';
-import CCKCColors from './CCKCColors.js';
const ammetersStringProperty = CircuitConstructionKitCommonStrings.ammetersStringProperty;
const ammeterStringProperty = CircuitConstructionKitCommonStrings.ammeterStringProperty;
diff --git a/js/view/SeriesAmmeterNode.ts b/js/view/SeriesAmmeterNode.ts
index 8b7693619..ae8c59af2 100644
--- a/js/view/SeriesAmmeterNode.ts
+++ b/js/view/SeriesAmmeterNode.ts
@@ -6,21 +6,24 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import EnumerationProperty from '../../../axon/js/EnumerationProperty.js';
+import StringProperty from '../../../axon/js/StringProperty.js';
+import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
+import MathSymbols from '../../../scenery-phet/js/MathSymbols.js';
import { Node, Rectangle, RectangleOptions, Text } from '../../../scenery/js/imports.js';
+import Panel from '../../../sun/js/Panel.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
import CCKCUtils from '../CCKCUtils.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import FixedCircuitElementNode, { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
-import CCKCScreenView from './CCKCScreenView.js';
-import CircuitNode from './CircuitNode.js';
-import SeriesAmmeter from '../model/SeriesAmmeter.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import MathSymbols from '../../../scenery-phet/js/MathSymbols.js';
-import ammeterReadoutTypeProperty from './ammeterReadoutTypeProperty.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import EnumerationProperty from '../../../axon/js/EnumerationProperty.js';
import CurrentSense from '../model/CurrentSense.js';
+import SeriesAmmeter from '../model/SeriesAmmeter.js';
+import ammeterReadoutTypeProperty from './ammeterReadoutTypeProperty.js';
+import CCKCScreenView from './CCKCScreenView.js';
+import CircuitNode from './CircuitNode.js';
+import FixedCircuitElementNode, { FixedCircuitElementNodeOptions } from './FixedCircuitElementNode.js';
import ProbeTextNode from './ProbeTextNode.js';
import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
import Panel from '../../../sun/js/Panel.js';
diff --git a/js/view/SourceResistanceControl.ts b/js/view/SourceResistanceControl.ts
index cc0a78798..b531c1ed5 100644
--- a/js/view/SourceResistanceControl.ts
+++ b/js/view/SourceResistanceControl.ts
@@ -1,4 +1,4 @@
-// Copyright 2020-2023, University of Colorado Boulder
+// Copyright 2020-2024, University of Colorado Boulder
/**
* Controls for showing and changing the battery internal resistance. Exists for the life of the sim and hence does not
@@ -8,17 +8,17 @@
* @author Denzell Barnett (PhET Interactive Simulations)
*/
+import PatternStringProperty from '../../../axon/js/PatternStringProperty.js';
+import Property from '../../../axon/js/Property.js';
+import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
import Utils from '../../../dot/js/Utils.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import { AlignGroup, Text, TextOptions, VBox } from '../../../scenery/js/imports.js';
import HSlider from '../../../sun/js/HSlider.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import Property from '../../../axon/js/Property.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
-import PatternStringProperty from '../../../axon/js/PatternStringProperty.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import CCKCColors from './CCKCColors.js';
const resistanceOhmsSymbolStringProperty = CircuitConstructionKitCommonStrings.resistanceOhmsSymbolStringProperty;
diff --git a/js/view/SwitchReadoutNode.ts b/js/view/SwitchReadoutNode.ts
index 4c2de30e8..d254398c4 100644
--- a/js/view/SwitchReadoutNode.ts
+++ b/js/view/SwitchReadoutNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2017-2023, University of Colorado Boulder
+// Copyright 2017-2024, University of Colorado Boulder
/**
* Readout that appears in the CircuitElementEditContainerNode that displays whether the switch is open or closed.
@@ -6,14 +6,14 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
import { Node, Text } from '../../../scenery/js/imports.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import Circuit from '../model/Circuit.js';
-import Switch from '../model/Switch.js';
-import Tandem from '../../../tandem/js/Tandem.js';
import CircuitElement from '../model/CircuitElement.js';
-import TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
+import Switch from '../model/Switch.js';
import Vertex from '../model/Vertex.js';
import CCKCColors from './CCKCColors.js';
diff --git a/js/view/ValueNode.ts b/js/view/ValueNode.ts
index 762b07ec2..897c56eaf 100644
--- a/js/view/ValueNode.ts
+++ b/js/view/ValueNode.ts
@@ -6,30 +6,30 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import Multilink from '../../../axon/js/Multilink.js';
import Property from '../../../axon/js/Property.js';
import Matrix3 from '../../../dot/js/Matrix3.js';
import Utils from '../../../dot/js/Utils.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import StringUtils from '../../../phetcommon/js/util/StringUtils.js';
import PhetFont from '../../../scenery-phet/js/PhetFont.js';
import { Color, Node, RichText, RichTextOptions, Text, TextOptions, VBox } from '../../../scenery/js/imports.js';
import Panel from '../../../sun/js/Panel.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
import CCKCQueryParameters from '../CCKCQueryParameters.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import Capacitor from '../model/Capacitor.js';
+import CircuitElement from '../model/CircuitElement.js';
+import CircuitElementViewType from '../model/CircuitElementViewType.js';
import Fuse from '../model/Fuse.js';
import Inductor from '../model/Inductor.js';
import LightBulb from '../model/LightBulb.js';
import Resistor from '../model/Resistor.js';
import Switch from '../model/Switch.js';
import VoltageSource from '../model/VoltageSource.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import CircuitElement from '../model/CircuitElement.js';
-import CircuitElementViewType from '../model/CircuitElementViewType.js';
-import Multilink from '../../../axon/js/Multilink.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
import CCKCColors from './CCKCColors.js';
const capacitanceFaradsSymbolStringProperty = CircuitConstructionKitCommonStrings.capacitanceFaradsSymbolStringProperty;
diff --git a/js/view/VertexNode.ts b/js/view/VertexNode.ts
index ee1b7a450..eaca93983 100644
--- a/js/view/VertexNode.ts
+++ b/js/view/VertexNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2016-2023, University of Colorado Boulder
+// Copyright 2016-2024, University of Colorado Boulder
/**
* The interactive scenery node for a vertex in the circuit graph.
@@ -8,6 +8,7 @@
import Utils from '../../../dot/js/Utils.js';
import Vector2 from '../../../dot/js/Vector2.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import { Circle, CircleOptions, Color, Grayscale, Node, SceneryConstants, SceneryEvent, Text, VBox } from '../../../scenery/js/imports.js';
import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
@@ -16,10 +17,9 @@ import CCKCUtils from '../CCKCUtils.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import Circuit from '../model/Circuit.js';
import Vertex from '../model/Vertex.js';
+import CCKCColors from './CCKCColors.js';
import CircuitNode from './CircuitNode.js';
import CircuitNodeDragListener from './CircuitNodeDragListener.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
-import CCKCColors from './CCKCColors.js';
// constants
const DISTANCE_TO_CUT_BUTTON = 70; // How far in view coordinates the cut button appears from the vertex node
diff --git a/js/view/VoltageChartNode.ts b/js/view/VoltageChartNode.ts
index dd0fe404e..1d1fd5bcd 100644
--- a/js/view/VoltageChartNode.ts
+++ b/js/view/VoltageChartNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2019-2023, University of Colorado Boulder
+// Copyright 2019-2024, University of Colorado Boulder
/**
* Shows the voltage as a function of time on a scrolling chart.
@@ -7,14 +7,19 @@
*/
import createObservableArray from '../../../axon/js/createObservableArray.js';
-import Vector2 from '../../../dot/js/Vector2.js';
+import Property from '../../../axon/js/Property.js';
+import Bounds2 from '../../../dot/js/Bounds2.js';
import Range from '../../../dot/js/Range.js';
+import Vector2 from '../../../dot/js/Vector2.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import { Color, Rectangle } from '../../../scenery/js/imports.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
import CCKCQueryParameters from '../CCKCQueryParameters.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import CCKCChartNode, { CCKCChartNodeOptions } from './CCKCChartNode.js';
+import CCKCProbeNode from './CCKCProbeNode.js';
import CircuitNode from './CircuitNode.js';
import Property from '../../../axon/js/Property.js';
import Bounds2 from '../../../dot/js/Bounds2.js';
diff --git a/js/view/VoltmeterNode.ts b/js/view/VoltmeterNode.ts
index e2a51250b..21f8bd49a 100644
--- a/js/view/VoltmeterNode.ts
+++ b/js/view/VoltmeterNode.ts
@@ -9,10 +9,17 @@
import BooleanProperty from '../../../axon/js/BooleanProperty.js';
import DerivedProperty from '../../../axon/js/DerivedProperty.js';
+import DerivedStringProperty from '../../../axon/js/DerivedStringProperty.js';
+import Multilink from '../../../axon/js/Multilink.js';
+import ReadOnlyProperty from '../../../axon/js/ReadOnlyProperty.js';
+import Bounds2 from '../../../dot/js/Bounds2.js';
import Vector2 from '../../../dot/js/Vector2.js';
import Vector2Property from '../../../dot/js/Vector2Property.js';
+import optionize from '../../../phet-core/js/optionize.js';
+import MathSymbols from '../../../scenery-phet/js/MathSymbols.js';
import WireNode from '../../../scenery-phet/js/WireNode.js';
import { Color, DragListener, Image, Node, NodeOptions, PressListenerEvent, Rectangle, Text } from '../../../scenery/js/imports.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import probeBlack_png from '../../mipmaps/probeBlack_png.js';
import probeRed_png from '../../mipmaps/probeRed_png.js';
import voltmeterBody_png from '../../mipmaps/voltmeterBody_png.js';
@@ -20,19 +27,12 @@ import alternateVoltmeterBody_png from '../../images/alternateVoltmeterBody_png.
import CCKCConstants from '../CCKCConstants.js';
import CCKCQueryParameters from '../CCKCQueryParameters.js';
import CCKCUtils from '../CCKCUtils.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import ProbeTextNode from './ProbeTextNode.js';
-import Voltmeter from '../model/Voltmeter.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import CircuitConstructionKitModel from '../model/CircuitConstructionKitModel.js';
+import Voltmeter from '../model/Voltmeter.js';
import CircuitNode from './CircuitNode.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import Bounds2 from '../../../dot/js/Bounds2.js';
-import MathSymbols from '../../../scenery-phet/js/MathSymbols.js';
-import ReadOnlyProperty from '../../../axon/js/ReadOnlyProperty.js';
-import optionize from '../../../phet-core/js/optionize.js';
-import Multilink from '../../../axon/js/Multilink.js';
-import DerivedStringProperty from '../../../axon/js/DerivedStringProperty.js';
+import ProbeTextNode from './ProbeTextNode.js';
const voltageStringProperty = CircuitConstructionKitCommonStrings.voltageStringProperty;
diff --git a/js/view/WireNode.ts b/js/view/WireNode.ts
index 5f68ac456..93da13b63 100644
--- a/js/view/WireNode.ts
+++ b/js/view/WireNode.ts
@@ -1,4 +1,4 @@
-// Copyright 2015-2023, University of Colorado Boulder
+// Copyright 2015-2024, University of Colorado Boulder
/**
* The node for a wire, which can be stretched out by dragging its vertices.
@@ -17,11 +17,11 @@ import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
import CircuitElementViewType from '../model/CircuitElementViewType.js';
import Vertex from '../model/Vertex.js';
import Wire from '../model/Wire.js';
+import CCKCColors from './CCKCColors.js';
import CCKCScreenView from './CCKCScreenView.js';
import CircuitElementNode from './CircuitElementNode.js';
import CircuitNode from './CircuitNode.js';
import CircuitNodeDragListener from './CircuitNodeDragListener.js';
-import CCKCColors from './CCKCColors.js';
// constants
const LIFELIKE_LINE_WIDTH = 16; // line width in screen coordinates
diff --git a/js/view/WireResistivityControl.ts b/js/view/WireResistivityControl.ts
index e573cc512..5019a36a5 100644
--- a/js/view/WireResistivityControl.ts
+++ b/js/view/WireResistivityControl.ts
@@ -1,4 +1,4 @@
-// Copyright 2017-2023, University of Colorado Boulder
+// Copyright 2017-2024, University of Colorado Boulder
/**
* Controls for showing and changing the wire resistivity. Exists for the life of the sim and hence does not require a
@@ -7,14 +7,14 @@
* @author Sam Reid (PhET Interactive Simulations)
*/
+import Property from '../../../axon/js/Property.js';
+import { combineOptions } from '../../../phet-core/js/optionize.js';
import { AlignGroup, Text, TextOptions, VBox } from '../../../scenery/js/imports.js';
import HSlider from '../../../sun/js/HSlider.js';
+import Tandem from '../../../tandem/js/Tandem.js';
import CCKCConstants from '../CCKCConstants.js';
-import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import circuitConstructionKitCommon from '../circuitConstructionKitCommon.js';
-import Property from '../../../axon/js/Property.js';
-import Tandem from '../../../tandem/js/Tandem.js';
-import { combineOptions } from '../../../phet-core/js/optionize.js';
+import CircuitConstructionKitCommonStrings from '../CircuitConstructionKitCommonStrings.js';
import CCKCColors from './CCKCColors.js';
const lotsStringProperty = CircuitConstructionKitCommonStrings.lotsStringProperty;
diff --git a/js/view/demo/CCKCDemoScreenView.ts b/js/view/demo/CCKCDemoScreenView.ts
index 01d7e6998..630f72d9b 100644
--- a/js/view/demo/CCKCDemoScreenView.ts
+++ b/js/view/demo/CCKCDemoScreenView.ts
@@ -1,4 +1,4 @@
-// Copyright 2020-2022, University of Colorado Boulder
+// Copyright 2020-2024, University of Colorado Boulder
/**
* Demonstrates different circuit element shapes and nodes.
@@ -9,8 +9,8 @@
import ScreenView, { ScreenViewOptions } from '../../../../joist/js/ScreenView.js';
import { Shape } from '../../../../kite/js/imports.js';
import { Path } from '../../../../scenery/js/imports.js';
-import BarkNode from '../BarkNode.js';
import circuitConstructionKitCommon from '../../circuitConstructionKitCommon.js';
+import BarkNode from '../BarkNode.js';
// Constants for the resistor
const SCHEMATIC_SCALE = 0.54;
diff --git a/tsconfig.json b/tsconfig.json
index e4b61435a..499fc8b93 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,5 +1,5 @@
{
- "extends": "../chipper/tsconfig-core.json",
+ "extends": "../perennial-alias/tsconfig/tsconfig-browser.json",
"include": [
"js/**/*",
"images/**/*",
@@ -14,7 +14,7 @@
"path": "../griddle/tsconfig.json"
},
{
- "path": "../chipper/tsconfig/buildjson"
+ "path": "../perennial-alias/tsconfig/buildjson/tsconfig.json"
}
]
}
\ No newline at end of file