<template>
  <div class="script-page">
    <!--
      平台「脚本管理」= SimpleLite 工作台「脚本」页（ComposerDockPanel.RenderScriptTable）的 Web 镜像：
        - 列表 = CarProgram.GetPrograms()，最多 300 条（含历史），由 Mission 调度运行时自动产生与回收。
        - 列：ID / 名称(任务名) / 类型(CarProgram 子类) / 车辆(plans[0].usingCar) / 状态(ProgramStatus.state)。
        - 不渲染「新建」按钮：CarProgram 无法手动 new，要新增脚本应去「任务编排」页建 Mission。
        - 不渲染「删除」按钮：CarProgram 由调度器在环形队列里维护，删除一律会被后端拒。
      右侧详情面板沿用通用 ReflectionManagerPanel 渲染（fields 多为 typed/locked，只读 status 通过反射）。
    -->
    <ReflectionManagerPanel
      kind="script"
      kind-label="脚本"
      title="脚本管理（CarProgram 运行实例 · 与 SimpleLite 工作台「脚本」页对齐）"
      empty-text="当前无 CarProgram 实例。CarProgram 是 Mission 运行时编译用户脚本后产生的对象，要创建脚本请到「任务编排」页新建 Mission。"
      disable-create
      disable-delete
      show-summary-column
      summary-label="车辆"
      show-status-column
      status-label="状态"
      show-script-actions
    />
  </div>
</template>

<script setup lang="ts">
import ReflectionManagerPanel from '@/components/reflection/ReflectionManagerPanel.vue'
</script>

<style scoped>
.script-page {
  height: calc(100vh - 56px);
  padding: 12px 14px;
  box-sizing: border-box;
}
</style>
