
    Ti	                     .    d dl mZ ddlZ G d de      Zy)   )	Migration    Nc                   \    e Zd ZdZdZdej                  ddfdZdej                  ddfdZy)V2AddCanvases   zAdd canvasesconnreturnNc                 "   |j                  d       |j                  d       |j                  d      }|j                         D cg c]  }|d   	 }}d|vr|j                  d       |j                  d       |j                  d       y c c}w )	Na  
            CREATE TABLE IF NOT EXISTS canvases (
                id TEXT PRIMARY KEY,
                name TEXT NOT NULL,
                data TEXT,
                description TEXT DEFAULT '',
                thumbnail TEXT DEFAULT '',
                created_at TEXT DEFAULT (STRFTIME('%Y-%m-%dT%H:%M:%fZ', 'now')),
                updated_at TEXT DEFAULT (STRFTIME('%Y-%m-%dT%H:%M:%fZ', 'now'))
            )
        zn
            CREATE INDEX IF NOT EXISTS idx_canvases_updated_at ON canvases(updated_at DESC, id DESC)
        z PRAGMA table_info(chat_sessions)r   	canvas_idzKALTER TABLE chat_sessions ADD COLUMN canvas_id TEXT REFERENCES canvases(id)zp
            INSERT OR IGNORE INTO canvases (id, name)
            VALUES ('default', 'Default Canvas')
        zt
            UPDATE chat_sessions
            SET canvas_id = 'default'
            WHERE canvas_id IS NULL
        )executefetchall)selfr   cursorcolumncolumnss        ]/home/jay/workspace/tools/ai-image-gen/jaaz-app/server/services/migrations/v2_add_canvases.pyupzV2AddCanvases.up	   s     
 
	 	  	
 @A+1??+<=6!9==g%LL]_ 	  	 	  	 >s   Bc                     |j                  d       |j                  d       |j                  d       |j                  d       |j                  d       y )Naa  
            CREATE TABLE chat_sessions_new (
                id TEXT PRIMARY KEY,
                created_at TEXT DEFAULT (STRFTIME('%Y-%m-%dT%H:%M:%fZ', 'now')),
                updated_at TEXT DEFAULT (STRFTIME('%Y-%m-%dT%H:%M:%fZ', 'now')),
                title TEXT,
                model TEXT,
                provider TEXT
            )
        z
            INSERT INTO chat_sessions_new (id, created_at, updated_at, title, model, provider)
            SELECT id, created_at, updated_at, title, model, provider FROM chat_sessions
        zDROP TABLE chat_sessionsz5ALTER TABLE chat_sessions_new RENAME TO chat_sessionszDROP TABLE IF EXISTS canvases)r   )r   r   s     r   downzV2AddCanvases.down1   sO     	 		 	  	
 	/0LM45    )	__name__
__module____qualname__versiondescriptionsqlite3
Connectionr   r    r   r   r   r      s?    G K&w)) &d &P6++ 6 6r   r   ) r   r   r   r   r   r   <module>r       s     A6I A6r   