initial commit
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
require_relative '../../versions'
|
||||
|
||||
Sequel.migration do
|
||||
change do
|
||||
create_table(:users) do
|
||||
primary_key :id
|
||||
String :email, null: false, unique: true
|
||||
String :name
|
||||
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
DateTime :updated_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
end
|
||||
|
||||
create_table(:identities) do
|
||||
primary_key :id
|
||||
foreign_key :user_id, :users, null: false, on_delete: :cascade
|
||||
String :provider, null: false
|
||||
String :uid, null: false
|
||||
String :token, text: true
|
||||
String :refresh_token, text: true
|
||||
DateTime :expires_at
|
||||
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
DateTime :updated_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
unique [:provider, :uid]
|
||||
end
|
||||
|
||||
create_enum(:project_type, %w[sbq hunt bingo dtq])
|
||||
|
||||
create_table(:pokemon) do
|
||||
primary_key :id
|
||||
String :name, unique: true, null: false, index: true
|
||||
|
||||
FO::Versions::VERSIONS_BY_GENERATION
|
||||
.values
|
||||
.map { |g| g[:version_groups] }
|
||||
.reduce(&:+)
|
||||
.each { |version|
|
||||
TrueClass ("version_#{version}").to_sym, default: false
|
||||
File ("version_#{version}_sprite").to_sym
|
||||
}
|
||||
|
||||
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
DateTime :updated_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
end
|
||||
|
||||
create_table(:projects) do
|
||||
primary_key :id
|
||||
foreign_key :user_id, :users, null: false, on_delete: :cascade
|
||||
column :data, :jsonb, null: false
|
||||
column :type, :project_type
|
||||
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
DateTime :updated_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user