import { deepFreeze } from "../../utils/index.js"; export class CyclingPowerCapabilities { constructor({ controlOpcodes = [], supportsCrankTorque = false } = {}) { /* * Если в конструктор передали ссылку на внешний массив, * slice() возвращает новый массив. О бъект получает собственную копию, * и дальнейшие изменения исходного массива снаружи не повлияют на * this.controlOpcodes. */ this.controlOpcodes = Array.isArray(controlOpcodes) ? controlOpcodes.slice() : []; this.supportsCrankTorque = Boolean(supportsCrankTorque); deepFreeze(this); } }