{"version":3,"file":"colgroup.mjs","sources":["../../../../../src/components/ivue-table/colgroup.ts"],"sourcesContent":["import { h, defineComponent } from 'vue';\r\n\r\nimport { TableColumnCtx } from './table-column/defaults';\r\n\r\ntype Props = {\r\n  columns: TableColumnCtx[];\r\n  tableLayout?: string;\r\n};\r\n\r\nexport default defineComponent({\r\n  props: {\r\n    /**\r\n     * 列数据\r\n     *\r\n     * @type {Array}\r\n     */\r\n    columns: {\r\n      type: Array,\r\n      default: () => [],\r\n    },\r\n    /**\r\n     * 设置表格单元、行和列的布局方式\r\n     *\r\n     * @type {String}\r\n     */\r\n    tableLayout: {\r\n      type: String,\r\n    },\r\n  },\r\n  methods: {\r\n    // 渲染col\r\n    renderCol(column: TableColumnCtx) {\r\n      // 是否是自动表格布局\r\n      const isAuto = this.tableLayout === 'auto';\r\n\r\n      const obj = {\r\n        key: `${this.tableLayout}-${column.id}`,\r\n        style: {},\r\n        name: undefined,\r\n      };\r\n\r\n      // auto\r\n      if (isAuto) {\r\n        obj.style = {\r\n          width: `${column.width}px`,\r\n        };\r\n      }\r\n      // fixed\r\n      else {\r\n        obj.name = column.id;\r\n      }\r\n\r\n      return h('col', obj);\r\n    },\r\n  },\r\n  render(props: Props) {\r\n    // 是否是自动表格布局\r\n    const isAuto = props.tableLayout === 'auto';\r\n\r\n    // 列数量\r\n    let columns = props.columns || [];\r\n\r\n    // auto\r\n    if (isAuto) {\r\n      if (columns.every((column) => column.width === undefined)) {\r\n        columns = [];\r\n      }\r\n    }\r\n\r\n    return h(\r\n      'colgroup',\r\n      {},\r\n      columns.map((column) => this.renderCol(column))\r\n    );\r\n  },\r\n});\r\n"],"names":[],"mappings":";;AASA,mBAAe,eAAgB,CAAA;AAAA,EAC7B,KAAO,EAAA;AAAA,IAML,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,KAAA;AAAA,MACN,OAAA,EAAS,MAAM,EAAC;AAAA,KAClB;AAAA,IAMA,WAAa,EAAA;AAAA,MACX,IAAM,EAAA,MAAA;AAAA,KACR;AAAA,GACF;AAAA,EACA,OAAS,EAAA;AAAA,IAEP,UAAU,MAAwB,EAAA;AAEhC,MAAM,MAAA,MAAA,GAAS,KAAK,WAAgB,KAAA,MAAA,CAAA;AAEpC,MAAA,MAAM,GAAM,GAAA;AAAA,QACV,GAAK,EAAA,CAAA,EAAG,IAAK,CAAA,WAAA,CAAA,CAAA,EAAe,MAAO,CAAA,EAAA,CAAA,CAAA;AAAA,QACnC,OAAO,EAAC;AAAA,QACR,IAAM,EAAA,KAAA,CAAA;AAAA,OACR,CAAA;AAGA,MAAA,IAAI,MAAQ,EAAA;AACV,QAAA,GAAA,CAAI,KAAQ,GAAA;AAAA,UACV,KAAA,EAAO,GAAG,MAAO,CAAA,KAAA,CAAA,EAAA,CAAA;AAAA,SACnB,CAAA;AAAA,OAGG,MAAA;AACH,QAAA,GAAA,CAAI,OAAO,MAAO,CAAA,EAAA,CAAA;AAAA,OACpB;AAEA,MAAO,OAAA,CAAA,CAAE,OAAO,GAAG,CAAA,CAAA;AAAA,KACrB;AAAA,GACF;AAAA,EACA,OAAO,KAAc,EAAA;AAEnB,IAAM,MAAA,MAAA,GAAS,MAAM,WAAgB,KAAA,MAAA,CAAA;AAGrC,IAAI,IAAA,OAAA,GAAU,KAAM,CAAA,OAAA,IAAW,EAAC,CAAA;AAGhC,IAAA,IAAI,MAAQ,EAAA;AACV,MAAA,IAAI,QAAQ,KAAM,CAAA,CAAC,WAAW,MAAO,CAAA,KAAA,KAAU,MAAS,CAAG,EAAA;AACzD,QAAA,OAAA,GAAU,EAAC,CAAA;AAAA,OACb;AAAA,KACF;AAEA,IAAO,OAAA,CAAA;AAAA,MACL,UAAA;AAAA,MACA,EAAC;AAAA,MACD,QAAQ,GAAI,CAAA,CAAC,WAAW,IAAK,CAAA,SAAA,CAAU,MAAM,CAAC,CAAA;AAAA,KAChD,CAAA;AAAA,GACF;AACF,CAAC,CAAA;;;;"}