UNPKG

@talend/react-components

Version:
39 lines (38 loc) 1.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _JSONLike = _interopRequireDefault(require("../JSONLike")); var _ListModule = _interopRequireDefault(require("./List.module.scss")); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function List({ data, ...props }) { if (!Array.isArray(data) && !Array.isArray(data.dataset)) { return null; } // The datas can be an array or an array in an object. We assign the value correctly here. const dataset = Array.isArray(data) ? data : data.dataset; return /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", { className: `${_ListModule.default.container} tc-object-viewer list-unstyled`, id: props.id, children: dataset.map((obj, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)("li", { children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_JSONLike.default, { data: obj, ...props, jsonpath: `$[${index}]` }) }, index)) }); } List.displayName = 'List'; List.propTypes = { data: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.object), _propTypes.default.object]).isRequired, id: _propTypes.default.string }; var _default = exports.default = List; //# sourceMappingURL=List.component.js.map