import { MongoMigration } from '../mongo_migrator.js' export default class CreateDevicesCollection extends MongoMigration { async up(): Promise { const collection = this.db.collection('devices') await collection.createIndex( { 'deviceId.manufacturer': 1, 'deviceId.oui': 1, 'deviceId.productClass': 1, 'deviceId.serialNumber': 1, }, { unique: true, name: 'idx_deviceId_compound' } ) await collection.createIndex({ identifier: 1 }, { unique: true, name: 'idx_identifier' }) await collection.createIndex({ 'deviceId.manufacturer': 1 }, { name: 'idx_manufacturer' }) await collection.createIndex({ 'deviceId.oui': 1 }, { name: 'idx_oui' }) await collection.createIndex({ 'deviceId.productClass': 1 }, { name: 'idx_productClass' }) await collection.createIndex({ 'deviceId.serialNumber': 1 }, { name: 'idx_serialNumber' }) } async down(): Promise { await this.db.dropCollection('devices').catch(() => {}) } }