Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
validate: () => {
let device = PeripheralDevices.findOne({type: PeripheralDeviceAPI.DeviceType.PLAYOUT})
if (!device) return 'Playout-gateway not found'
let settings = device.settings || {devices: {}} as PlayoutDeviceSettings
let ptz0 = settings.devices['ptz0'] as PlayoutDeviceSettingsDevicePanasonicPTZ
if (!ptz0) return '"ptz0" missing'
// @ts-ignore
if (!ptz0.options) ptz0.options = {}
if (ptz0.type !== PlayoutDeviceType.PANASONIC_PTZ) return 'Type is not "PANASONIC_PTZ"'
// let cameraDevices = ptz0.options.cameraDevices
return false
},
migrate: () => {
_rank: 0,
name: 'Robotics',
type: SourceLayerType.CAMERA_MOVEMENT,
onPGMClean: true,
activateKeyboardHotkeys: '',
assignHotkeysToGlobalAdlibs: false,
unlimited: true
}),
ensureMapping('hyperdeck0', literal({
device: PlayoutDeviceType.HYPERDECK,
deviceId: 'hyperdeck0',
mappingType: MappingHyperdeckType.TRANSPORT,
lookahead: LookaheadMode.NONE,
})),
ensureMapping('ptz0_preset', literal({
device: PlayoutDeviceType.PANASONIC_PTZ,
deviceId: 'ptz0',
mappingType: MappingPanasonicPtzType.PRESET,
lookahead: LookaheadMode.WHEN_CLEAR,
})),
ensureMapping('ptz0_speed', literal({
device: PlayoutDeviceType.PANASONIC_PTZ,
deviceId: 'ptz0',
mappingType: MappingPanasonicPtzType.PRESET_SPEED,
lookahead: LookaheadMode.NONE,
})),
ensureStudioConfig('sources_kam_ptz', '1:ptz0'),
ensureDeviceVersion('ensureVersion.mosDevice', PeripheralDeviceAPI.DeviceType.MOSDEVICE, '_process', '0.1.1')
])
// 0.18.0: Release 4
addMigrationSteps( '0.18.0', [
migrate: () => {
let device = PeripheralDevices.findOne({type: PeripheralDeviceAPI.DeviceType.PLAYOUT})
if (device) {
// Set some default values:
let ptz0 = device.settings && device.settings.devices['ptz0']
if (!ptz0) {
logger.info(`Migration: Add PeripheralDevice.settings to ${device._id}: ptz0`)
PeripheralDevices.update(device._id, {$set: {
'settings.devices.ptz0': {
type: PlayoutDeviceType.PANASONIC_PTZ,
options: {
cameraDevices: []
}
}
}})
}
}
},
input: [{
unlimited: true
}),
ensureMapping('hyperdeck0', literal({
device: PlayoutDeviceType.HYPERDECK,
deviceId: 'hyperdeck0',
mappingType: MappingHyperdeckType.TRANSPORT,
lookahead: LookaheadMode.NONE,
})),
ensureMapping('ptz0_preset', literal({
device: PlayoutDeviceType.PANASONIC_PTZ,
deviceId: 'ptz0',
mappingType: MappingPanasonicPtzType.PRESET,
lookahead: LookaheadMode.WHEN_CLEAR,
})),
ensureMapping('ptz0_speed', literal({
device: PlayoutDeviceType.PANASONIC_PTZ,
deviceId: 'ptz0',
mappingType: MappingPanasonicPtzType.PRESET_SPEED,
lookahead: LookaheadMode.NONE,
})),
ensureStudioConfig('sources_kam_ptz', '1:ptz0'),
ensureDeviceVersion('ensureVersion.mosDevice', PeripheralDeviceAPI.DeviceType.MOSDEVICE, '_process', '0.1.1')
])
// 0.18.0: Release 4
addMigrationSteps( '0.18.0', [
removeMapping('nora_permanent_klokke'),
removeMapping('nora_permanent_logo'),
ensureMapping('nora_primary_klokke', literal({
device: PlayoutDeviceType.HTTPSEND,
deviceId: 'http0',
lookahead: LookaheadMode.NONE,