pub use sea_orm_migration::prelude::*;

mod m20220101_000001_create_users_table;
mod m20261016_000002_hash_user_passwords;
mod m20261017_000003_create_repositories_table;
mod m20261017_000004_create_ssh_keys_table;
mod m20261018_000005_create_tickets;
mod m20261018_000006_add_next_ticket_number;
mod m20261019_000007_create_patch_proposals;
mod m20261020_000008_create_comments;
mod m20261021_000009_add_change_id_to_patch_proposals;
mod m20261022_000010_add_state_to_tickets;
mod m20261023_000011_create_ap_actors;
mod m20261023_000012_create_ap_remote_actors;
mod m20261025_000013_create_ap_notes;
mod m20261025_000014_create_ap_deliveries;
mod m20261025_000015_create_ap_reactions;
mod m20261025_000016_create_invites_table;
mod m20261025_000017_create_ap_following;
mod m20261025_000018_create_ap_remote_notes;
mod m20261025_000019_add_remote_note_to_reactions;
mod m20261025_000020_federate_tickets;
mod m20261025_000021_federate_patch_proposals;
mod m20261025_000022_federate_comments;
mod m20261025_000023_create_ap_remote_tickets;
mod m20261025_000024_create_ap_remote_actor_tombstones;
mod m20261025_000025_add_snapshot_oids_to_patch_proposals;
mod m20261025_000026_add_icon_url_to_ap_remote_actors;

pub struct Migrator;

#[async_trait::async_trait]
impl MigratorTrait for Migrator {
    fn migrations() -> Vec<Box<dyn MigrationTrait>> {
        vec![
            Box::new(m20220101_000001_create_users_table::Migration),
            Box::new(m20261016_000002_hash_user_passwords::Migration),
            Box::new(m20261017_000003_create_repositories_table::Migration),
            Box::new(m20261017_000004_create_ssh_keys_table::Migration),
            Box::new(m20261018_000005_create_tickets::Migration),
            Box::new(m20261018_000006_add_next_ticket_number::Migration),
            Box::new(m20261019_000007_create_patch_proposals::Migration),
            Box::new(m20261020_000008_create_comments::Migration),
            Box::new(m20261021_000009_add_change_id_to_patch_proposals::Migration),
            Box::new(m20261022_000010_add_state_to_tickets::Migration),
            Box::new(m20261023_000011_create_ap_actors::Migration),
            Box::new(m20261023_000012_create_ap_remote_actors::Migration),
            Box::new(m20261025_000013_create_ap_notes::Migration),
            Box::new(m20261025_000014_create_ap_deliveries::Migration),
            Box::new(m20261025_000015_create_ap_reactions::Migration),
            Box::new(m20261025_000016_create_invites_table::Migration),
            Box::new(m20261025_000017_create_ap_following::Migration),
            Box::new(m20261025_000018_create_ap_remote_notes::Migration),
            Box::new(m20261025_000019_add_remote_note_to_reactions::Migration),
            Box::new(m20261025_000020_federate_tickets::Migration),
            Box::new(m20261025_000021_federate_patch_proposals::Migration),
            Box::new(m20261025_000022_federate_comments::Migration),
            Box::new(m20261025_000023_create_ap_remote_tickets::Migration),
            Box::new(m20261025_000024_create_ap_remote_actor_tombstones::Migration),
            Box::new(m20261025_000025_add_snapshot_oids_to_patch_proposals::Migration),
            Box::new(m20261025_000026_add_icon_url_to_ap_remote_actors::Migration),
        ]
    }
}
