UNPKG

zmp-vue

Version:

Build full featured iOS & Android apps using ZMP & Vue

58 lines (47 loc) 1.64 kB
"use strict"; exports.__esModule = true; exports.default = void 0; var _vue = require("vue"); var _gridItem = _interopRequireDefault(require("./grid-item")); var _constants = require("../../common/constants"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function render(_ctx, _cache) { var _ref; var _component_GridItem = (0, _vue.resolveComponent)("GridItem"); return (0, _vue.openBlock)(), (0, _vue.createBlock)("div", { class: ["grid", (_ref = {}, _ref["grid-" + _ctx.gridColumns] = true, _ref['grid-no-border'] = _ctx.noBorder, _ref)] }, [_ctx.data && _ctx.data.length ? ((0, _vue.openBlock)(true), (0, _vue.createBlock)(_vue.Fragment, { key: 0 }, (0, _vue.renderList)(_ctx.data, function (item, index) { return (0, _vue.openBlock)(), (0, _vue.createBlock)(_component_GridItem, (0, _vue.mergeProps)({ key: item.key || "grid-item-" + index }, item), null, 16); }), 128)) : (0, _vue.renderSlot)(_ctx.$slots, "default", { key: 1 })], 2); } var _default = { name: 'zmp-grid', render: render, props: { noBorder: Boolean, data: Array, columns: [Number, String] }, components: { GridItem: _gridItem.default }, setup: function setup(props) { var gridColumns = (0, _vue.computed)(function () { var gridColumns = 3; if (props.columns && props.columns > _constants.MIN_GRID_COLUMNS && props.columns < _constants.MAX_GRID_COLUMNS) { gridColumns = props.columns; } return gridColumns; }); return { gridColumns: gridColumns }; } }; exports.default = _default;