import { ref } from 'vue'

// 旧版 附件答题
// const AreaList = reactive({
//   0: [],
// })
// export default AreaList

// export function handleDelAreaItem({ id, hash }) {
//   const arr = AreaList[id]
//   const index = arr.findIndex((i) => i.hash === hash)
//   arr.splice(index, 1)
// }

//

// const AreaList = reactive([
//   {
//     paper: 0,
//     x: 61,
//     y: 399,
//     w: 149,
//     h: 93,
//     x2: 210,
//     y2: 492,
//     active: false,
//     ready: true,
//     hash: 1650612800525,
//     form: {
//       areatype: 6,
//       tmsl: 5,
//       thjg: 1,
//       xxsl: 4,
//       qsth: 1,
//       jsth: 5,
//       plfx: 1,
//       ttcc_w: 20,
//       ttcc_h: 12,
//       rows: [0, 20, 40, 60, 80],
//       cols: [29, 60, 91, 122],
//     },
//   },
//   {
//     paper: 0,
//     x: 570,
//     y: 61,
//     w: 275,
//     h: 96,
//     x2: 845,
//     y2: 157,
//     active: false,
//     ready: true,
//     hash: 1650612846973,
//     form: {
//       areatype: 7,
//       tmsl: 5,
//       thjg: 1,
//       xxsl: 8,
//       qsth: 31,
//       jsth: 35,
//       plfx: 1,
//       ttcc_w: 20,
//       ttcc_h: 12,
//       rows: [1, 21, 41, 61, 81],
//       cols: [29, 60, 91, 122, 153, 184, 215, 246],
//     },
//   },
//   {
//     paper: 0,
//     x: 568,
//     y: 565,
//     w: 104,
//     h: 99,
//     x2: 672,
//     y2: 664,
//     active: false,
//     ready: true,
//     hash: 1650612888565,
//     form: {
//       areatype: 8,
//       tmsl: 5,
//       thjg: 1,
//       xxsl: 2,
//       qsth: 51,
//       jsth: 55,
//       ttcc_w: 20,
//       ttcc_h: 12,
//       rows: [1, 21, 41, 61, 81],
//       cols: [32, 63],
//       plfx: 1,
//     },
//   },
//   {
//     paper: 0,
//     x: 571,
//     y: 715,
//     w: 470,
//     h: 116,
//     x2: 1041,
//     y2: 831,
//     active: false,
//     ready: true,
//     hash: 1650612937191,
//     form: {
//       areatype: 9,
//       qsth: 61,
//       ttcc_w: 20,
//       ttcc_h: 12,
//     },
//   },
//   {
//     paper: 1,
//     x: 24,
//     y: 48,
//     w: 498,
//     h: 1036,
//     x2: 522,
//     y2: 1084,
//     active: false,
//     ready: true,
//     hash: 1650612963047,
//     form: {
//       areatype: 10,
//       qsth: 67,
//       ttcc_w: 20,
//       ttcc_h: 12,
//     },
//   },
// ])
// const AreaList = reactive([])

interface AreaItem {
  paper: number
  x: number
  y: number
  w: number
  h: number
  x2: number
  y2: number
  active: boolean
  ready: boolean
  hash: number
  form: {
    areatype: number
    qsth: number
    ttcc_w: number
    ttcc_h: number
    [key: string]: unknown
  }
  questions?: AreaItem[]
}

export const AreaList = ref<any[]>([])
export default AreaList

export function handleDelAreaItem(index: number) {
  AreaList.value.splice(index, 1)
}

export function getAreaHashMap() {
  const map: { [key: number]: AreaItem } = {}
  AreaList.value.forEach((_) => {
    map[_.hash] = _
  })
  return map
}
