-- #migration 2026_08_09_178_metrics_and_tutos_tables
-- Nouvelles tables pour le nouveau format de carte v2

-- Métriques réutilisables entre cartes
CREATE TABLE IF NOT EXISTS metrics (
    id            VARCHAR(100) NOT NULL PRIMARY KEY,
    label         TEXT         NOT NULL,
    type          VARCHAR(20)  NOT NULL DEFAULT 'number',
    unit          VARCHAR(50)  NULL,
    cadence_jours INT          NOT NULL DEFAULT 30,
    created_at    DATETIME     NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Liaison carte ↔ métrique
CREATE TABLE IF NOT EXISTS card_metrics (
    card_id    VARCHAR(20)  NOT NULL,
    metric_id  VARCHAR(100) NOT NULL,
    sort_order INT          NOT NULL DEFAULT 0,
    PRIMARY KEY (card_id, metric_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Tutos par item de checklist
CREATE TABLE IF NOT EXISTS card_tutos (
    card_id    VARCHAR(20)  NOT NULL,
    item_id    VARCHAR(100) NOT NULL,
    titre      VARCHAR(255) NOT NULL DEFAULT '',
    contenu    LONGTEXT     NULL,
    pdf_url    VARCHAR(500) NULL,
    updated_at DATETIME     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (card_id, item_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
