-- ============================================================
-- MiniMax-H3 — uapiio + uapi（bricks input_field 格式）
-- ============================================================

-- === uapiio ===
-- input_fields: bricks兼容格式，数组，每个字段有 name/label/uitype
INSERT IGNORE INTO uapiio (id, name, description, input_fields) VALUES (
  'm_h3_video_gen_io',
  'MiniMax-H3 视频生成',
  'MiniMax-H3 视频生成v2接口。支持文生视频、图生视频(首帧/尾帧)。',
  '[
    {
      "name": "prompt",
      "label": "提示词",
      "required": true,
      "uitype": "text"
    },
    {
      "name": "image_url",
      "label": "参考图片(首帧)",
      "uitype": "image"
    },
    {
      "name": "resolution",
      "label": "分辨率",
      "uitype": "code",
      "data": [
        {"value": "768P", "text": "768P"},
        {"value": "2K", "text": "2K"}
      ],
      "defaultvalue": "768P"
    },
    {
      "name": "duration",
      "label": "视频时长",
      "uitype": "code",
      "data": [
        {"value": 5, "text": "5秒"},
        {"value": 6, "text": "6秒"},
        {"value": 8, "text": "8秒"},
        {"value": 10, "text": "10秒"}
      ],
      "defaultvalue": 5
    },
    {
      "name": "ratio",
      "label": "宽高比",
      "uitype": "code",
      "data": [
        {"value": "adaptive", "text": "自适应"},
        {"value": "16:9", "text": "16:9"},
        {"value": "9:16", "text": "9:16"},
        {"value": "1:1", "text": "1:1"}
      ],
      "defaultvalue": "adaptive"
    }
  ]'
);

-- === uapi: 创建视频任务 ===
-- stream=async, chunk_match=task_id (从响应中提取task_id用于轮询)
INSERT IGNORE INTO uapi (id, upappid, name, title, description, need_auth, stream, path, httpmethod, chunk_match, headers, params, data, response, ioid) VALUES (
  'm_h3_create_task',
  'minimax',
  'video_generation_v2',
  'MiniMax-H3 创建视频任务',
  '创建 MiniMax-H3 视频生成任务，返回 task_id 用于轮询结果',
  '0',
  'async',
  '/v2/video_generation',
  'POST',
  'task_id',
  '{"Content-Type": "application/json", "Authorization": "Bearer {{apikey}}"}',
  NULL,
  '{{jsondata}}',
  '{{response}}',
  'm_h3_video_gen_io'
);

-- === uapi: 查询视频任务 ===
-- stream=sync (直接返回任务状态)
INSERT IGNORE INTO uapi (id, upappid, name, title, description, need_auth, stream, path, httpmethod, chunk_match, headers, params, data, response, ioid) VALUES (
  'm_h3_query_task',
  'minimax',
  'query_video_generation',
  'MiniMax-H3 查询视频任务',
  '按 task_id 查询 MiniMax-H3 视频生成任务状态与结果',
  '0',
  'sync',
  '/v2/query/video_generation/{{task_id}}',
  'GET',
  '',
  '{"Authorization": "Bearer {{apikey}}"}',
  NULL,
  NULL,
  '{{response}}',
  'm_h3_video_gen_io'
);

-- === upapp ===
INSERT IGNORE INTO upapp (id, name, baseurl, myappid, ownerid, description) VALUES (
  'minimax',
  'minimax',
  'https://api.minimax.chat',
  'minimax',
  'platform',
  'MiniMax 视频生成平台。提供 H3 视频生成模型。'
);

-- === upappkey (请替换真实API Key) ===
-- INSERT IGNORE INTO upappkey (id, upappid, orgid, apikey, enabled_date, expired_date) VALUES (
--   'mk_minimax_default', 'minimax', 'platform', '<RC4_ENCODED_KEY>', '2025-01-01', '9999-12-31'
-- );
