31 lines
987 B
SQL
31 lines
987 B
SQL
CREATE TABLE IF NOT EXISTS migrations (
|
|
version INTEGER PRIMARY KEY,
|
|
applied_at TEXT NOT NULL
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS module_categories (
|
|
id TEXT PRIMARY KEY,
|
|
name TEXT NOT NULL UNIQUE COLLATE NOCASE,
|
|
color TEXT,
|
|
icon TEXT,
|
|
sort_order INTEGER NOT NULL DEFAULT 0
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS modules (
|
|
id TEXT PRIMARY KEY,
|
|
type TEXT NOT NULL,
|
|
name TEXT NOT NULL,
|
|
description TEXT NOT NULL DEFAULT '',
|
|
category_id TEXT REFERENCES module_categories(id) ON DELETE SET NULL,
|
|
tags TEXT NOT NULL DEFAULT '[]',
|
|
is_favorite INTEGER NOT NULL DEFAULT 0,
|
|
payload TEXT NOT NULL,
|
|
version INTEGER NOT NULL DEFAULT 1,
|
|
created_at TEXT NOT NULL,
|
|
updated_at TEXT NOT NULL
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_modules_type ON modules(type);
|
|
CREATE INDEX IF NOT EXISTS idx_modules_category ON modules(category_id);
|
|
CREATE INDEX IF NOT EXISTS idx_modules_updated_at ON modules(updated_at DESC);
|