class CreateAppAnnouncements < ActiveRecord::Migration[7.2] def change create_table :app_announcements, id: :uuid do |t| t.string :kind, null: false, default: "info" t.string :severity, null: false, default: "info" t.string :status, null: false, default: "draft" t.boolean :show_on_app, null: false, default: true t.boolean :show_on_web_public, null: false, default: false t.boolean :show_on_web_private, null: false, default: false t.string :title, null: false t.text :body, null: false t.string :action_url t.string :action_label t.boolean :dismissible, null: false, default: true t.datetime :starts_at t.datetime :ends_at t.references :created_by_admin, foreign_key: { to_table: :admin_accounts }, type: :uuid t.timestamps end add_index :app_announcements, :status add_index :app_announcements, %i[status starts_at ends_at] end end