sunmao-sdk
Version:
榫卯-开箱即用赋能-sdk
41 lines (37 loc) • 1.38 kB
JavaScript
import React from "react";
import { Checkbox } from "@alifd/next";
import { getArray } from "../../base/utils";
export default function checkboxes(p) {
var schema = p.schema || {};
var _schema$items = schema.items,
items = _schema$items === void 0 ? {} : _schema$items;
var _ref = items && items.enum ? items : schema,
enums = _ref.enum,
enumNames = _ref.enumNames;
var _value = p.value && Array.isArray(p.value) ? p.value : []; // if (p.readOnly) {
// let displayText = _value.join(',');
// if (enumNames) {
// const idxs = _value.map(v => enums.indexOf(v));
// const nameList = enumNames.filter((e, i) => idxs.indexOf(i) > -1);
// displayText = nameList.join(',');
// }
// return <span>{displayText}</span>;
// }
return /*#__PURE__*/React.createElement(Checkbox.Group, {
disabled: p.disabled || p.readOnly,
value: _value,
onChange: function onChange(values) {
return p.onChange(p.name, values);
}
}, getArray(enums, [true, false]).map(function (val, index) {
return /*#__PURE__*/React.createElement(Checkbox, {
value: val,
key: index
}, /*#__PURE__*/React.createElement("span", {
// eslint-disable-next-line react/no-danger
dangerouslySetInnerHTML: {
__html: enumNames && Array.isArray(enumNames) ? enumNames[index] : val
}
}));
}));
}