/**
 * spreadsheetのシート操作を扱うファイル
 */

const SHEET = {
  room: {
    name: 'room',
    row: {
      data: 2,
    },
    column: {
      id: 1,
      link: 2,
      name: 3,
      myRole: 4,
      status: 5,
    },
  },
  roomMy: {
    name: '作業',
    row: {
      data: 2,
    },
    column: {
      id: 1,
      myRole: 3,
    },
  },
  file: {
    name: 'file',
    row: {
      data: 2,
    },
    column: {
      id: 1,
      name: 2,
      status: 3,
      size: 4,
      room: {
        id: 5,
        name: 6,
      },
      message: {
        id: 7,
        name: 8,
      },
      url: 9,
    },
  },
  config: {
    name: 'config',
    range: {
      token: 'b1',
    },
  },
};

function getRoomListFromSheet() {
  return BaseLibrary.getSheetData(SHEET.room).map((row, rowIndex) => {
    const room = new Room();
    room.setDataFromSheet(row, rowIndex);
    return room;
  });
}

function getRoomListFromRoomMySheet() {
  return BaseLibrary.getSheetData(SHEET.roomMy).map(row => {
    const room = new Room();
    room.setDataFromRoomMySheet(row);
    return room;
  });
}

function getFileListFromSheet() {
  return BaseLibrary.getSheetData(SHEET.file).map((row, rowIndex) => {
    const file = new File();
    file.setDataFromSheet(row, rowIndex);
    return file;
  });
}