rr-table
Version:
Responsive and customizable React Table
670 lines (650 loc) • 73.5 kB
JavaScript
"use strict";
var _react = _interopRequireDefault(require("react"));
var _react2 = require("@storybook/react");
var _addonCentered = _interopRequireDefault(require("@storybook/addon-centered"));
var _addonKnobs = require("@storybook/addon-knobs");
var _addonActions = require("@storybook/addon-actions");
var _mocks = require("../../config/storybook/mocks");
var _wrappers = require("../../config/storybook/wrappers");
var _components = require("../../config/storybook/components");
var _utils = require("../../config/storybook/utils");
var _Row = _interopRequireDefault(require("../Row"));
var _index = _interopRequireDefault(require("./index"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
/** Stories of Default Table */
(0, _react2.storiesOf)('- Table -|1 - Default', module)
/** Decorators */
.addDecorator(function (story) {
return _react.default.createElement(_wrappers.StoryWrapper, {
border: (0, _addonKnobs.boolean)('-- wrapper border --', false)
}, story());
}).addDecorator(_addonCentered.default)
/** Stories */
.add('1 - Default Table', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', ['Name', 'Surname', 'id']),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('2 - Default Table with keys', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('3 - Responsive Table Colored', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
colWidths: (0, _addonKnobs.array)('colWidths', _mocks.mockedColWidths),
card: function card(_ref) {
var data = _ref.data,
close = _ref.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
center: (0, _addonKnobs.boolean)('center', false),
isLoading: (0, _addonKnobs.boolean)('isLoading', false),
loader: _components.Loader,
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('4 - Responsive Table with custom options and custom empty cell and colored text', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref2) {
var data = _ref2.data,
close = _ref2.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
cardWidth: (0, _addonKnobs.text)('cardWidth', '400px'),
colored: (0, _addonKnobs.object)('colored', {
color: '#e1bee7',
parity: 1
}),
center: (0, _addonKnobs.boolean)('center', false),
emptyCellContent: function emptyCellContent() {
return _react.default.createElement("div", {
style: {
color: 'peru',
fontWeight: 'bold'
}
}, "NA");
},
colWidths: (0, _addonKnobs.array)('colWidths', _mocks.mockedColWidths),
fontSize: (0, _addonKnobs.text)('fontSize', '16px'),
lineClamp: (0, _addonKnobs.number)('lineClamp', 3),
lineHeight: (0, _addonKnobs.number)('lineHeight', 2.2),
rowHeight: (0, _addonKnobs.text)('rowHeight', '120px'),
textColor: (0, _addonKnobs.color)('textColor', '#303f9f'),
cellPadding: (0, _addonKnobs.text)('cellPadding', '10px'),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('5 - Responsive Table with custom options and custom empty cell and custom colors', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref3) {
var data = _ref3.data,
close = _ref3.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
cardWidth: (0, _addonKnobs.text)('cardWidth', '400px'),
colored: (0, _addonKnobs.object)('colored', {
color: '#cfd8dc',
parity: 2
}),
center: (0, _addonKnobs.boolean)('center', false),
emptyCellContent: function emptyCellContent() {
return _react.default.createElement("div", {
style: {
color: '#ffcc80',
fontWeight: 'bold'
}
}, "No data");
},
colWidths: (0, _addonKnobs.array)('colWidths', _mocks.mockedColWidths),
fontSize: (0, _addonKnobs.text)('fontSize', '14px'),
lineClamp: (0, _addonKnobs.number)('lineClamp', 1),
lineHeight: (0, _addonKnobs.number)('lineHeight', 2.2),
rowHeight: (0, _addonKnobs.text)('rowHeight', '50px'),
textColor: (0, _addonKnobs.object)('textColor', {
default: '#263238',
hovered: '#3f51b5',
selected: '#f5f5f5'
}),
rowColor: (0, _addonKnobs.object)('rowColor', {
default: '#e8eaf6',
hovered: '#b0bec5',
selected: '#00897b'
}),
cellPadding: (0, _addonKnobs.text)('cellPadding', '10px'),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('6 - normalize', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', [{
title: 'Name',
sortingKey: 'name'
}, {
title: 'Surname'
}, {
title: 'Age',
sortingKey: 'info.age'
}, 'Job', {
title: 'Sex',
sortingKey: 'info.sex'
}, 'Animaux']),
keys: (0, _addonKnobs.array)('keys', [{
display: 'name',
normalize: function normalize(data) {
return data.toUpperCase();
}
}, 'surname', 'info.age', 'company.job', 'info.sex', function (d) {
return d.pets && d.pets.join(', ').toUpperCase();
}]),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref4) {
var data = _ref4.data,
close = _ref4.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('7 - Sorting', function () {
return _react.default.createElement(_index.default, {
onSort: (0, _addonActions.action)('cell clicked'),
sort: (0, _addonKnobs.object)('sort', {
sortingKey: 'name',
order: 'DESC'
}),
titles: (0, _addonKnobs.array)('titles', [{
title: 'Name',
sortingKey: 'name'
}, {
title: 'Surname'
}, {
title: 'Age',
sortingKey: 'info.age'
}, 'Job', {
title: 'Sex',
sortingKey: 'info.sex'
}, 'Animaux']),
keys: (0, _addonKnobs.array)('keys', [{
display: 'name',
normalize: function normalize(data) {
return data.toUpperCase();
}
}, 'surname', 'info.age', 'company.job', 'info.sex', function (d) {
return d.pets && d.pets.join(', ').toUpperCase();
}]),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref5) {
var data = _ref5.data,
close = _ref5.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
});
/** Stories of Empty data */
(0, _react2.storiesOf)('- Table -|2 - Empty data', module)
/** Decorators */
.addDecorator(function (story) {
return _react.default.createElement(_wrappers.StoryWrapper, {
border: (0, _addonKnobs.boolean)('-- wrapper border --', false)
}, story());
}).addDecorator(_addonCentered.default)
/** Stories */
.add('1 - Empty data row', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref6) {
var data = _ref6.data,
close = _ref6.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
center: (0, _addonKnobs.boolean)('center', false),
isLoading: (0, _addonKnobs.boolean)('isLoading', false),
loader: _components.Loader,
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedListWithEmptyData)
});
}).add('2 - No data at all - default', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref7) {
var data = _ref7.data,
close = _ref7.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
center: (0, _addonKnobs.boolean)('center', false),
isLoading: (0, _addonKnobs.boolean)('isLoading', false),
loader: _components.Loader,
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', [])
});
}).add('3 - No data at all - custom text', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref8) {
var data = _ref8.data,
close = _ref8.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
center: (0, _addonKnobs.boolean)('center', false),
isLoading: (0, _addonKnobs.boolean)('isLoading', false),
loader: _components.Loader,
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', []),
emptyList: (0, _addonKnobs.text)('emptyList', '0 results')
});
}).add('4 - No data at all - custom component', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref9) {
var data = _ref9.data,
close = _ref9.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
center: (0, _addonKnobs.boolean)('center', false),
isLoading: (0, _addonKnobs.boolean)('isLoading', false),
loader: _components.Loader,
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', []),
emptyList: _react.default.createElement(_components.EmptyRowContent, null, "Empty list")
});
});
/** Stories of Table with custom Head */
(0, _react2.storiesOf)('- Table -|3 - Custom Head', module)
/** Decorators */
.addDecorator(function (story) {
return _react.default.createElement(_wrappers.StoryWrapper, {
border: (0, _addonKnobs.boolean)('-- wrapper border --', false)
}, story());
}).addDecorator(_addonCentered.default)
/** Stories */
.add('- Custom Head (component)', function () {
return _react.default.createElement(_index.default, {
head: (0, _addonKnobs.object)('head', _react.default.createElement(_components.Head, {
titles: (0, _addonKnobs.array)('titles', ['Name', 'Surname', 'id'])
})),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('- Custom Head (component function)', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', ['Name', 'Surname', 'id']),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList),
head: _components.Head
});
}).add('- Custom Head (function render props)', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', ['Name', 'Surname', 'id']),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList),
head: function head(_ref10) {
var titles = _ref10.titles;
return _react.default.createElement("div", {
style: {
display: 'flex',
justifyContent: 'space-between',
backgroundColor: '#c5e1a5',
height: '3rem'
}
}, titles.map(function (title) {
return _react.default.createElement("div", {
key: title
}, title);
}));
}
});
});
/** Stories of Table with custom HeadCell */
(0, _react2.storiesOf)('- Table -|4 - Custom HeadCell', module)
/** Decorators */
.addDecorator(function (story) {
return _react.default.createElement(_wrappers.StoryWrapper, {
border: (0, _addonKnobs.boolean)('-- wrapper border --', false)
}, story());
}).addDecorator(_addonCentered.default)
/** Stories */
.add('- Custom HeadCell (component function)', function () {
return _react.default.createElement(_index.default, {
headCell: _components.HeadCell,
titles: (0, _addonKnobs.object)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
}).add('- Custom HeadCell (function render props)', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', ['Name', 'Surname', 'id']),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList),
headCell: function headCell(_ref11) {
var title = _ref11.title,
id = _ref11.id;
return _react.default.createElement(_components.HeadCell, {
key: id
}, title);
}
});
}).add('- Custom Head with custom HeadCell (function render props)', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', ['Name', 'Surname', 'id']),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList),
head: _components.Head,
headCell: function headCell(_ref12) {
var title = _ref12.title,
id = _ref12.id;
return _react.default.createElement(_components.HeadCell, {
key: id
}, title);
}
});
}).add('- with html', function () {
return _react.default.createElement(_index.default, {
onSort: _utils.onSort,
sort: (0, _addonKnobs.object)('sort', {
sortingKey: 'name',
order: 'DESC'
}),
titles: (0, _addonKnobs.array)('titles', [{
title: 'Name',
sortingKey: 'name'
}, {
title: 'Surname'
}, {
title: 'Age',
sortingKey: 'info.age'
}, 'Job', {
title: 'Sex',
sortingKey: 'info.sex'
}, 'Animaux']),
keys: (0, _addonKnobs.array)('keys', [{
display: 'name',
normalize: function normalize(data) {
return data.toUpperCase();
}
}, 'surname', 'info.age', 'company.job', 'info.sex', function (d) {
return _react.default.createElement("button", {
type: "button",
onClick: function onClick(e) {
e.stopPropagation();
}
}, d.info.sex);
}]),
breakpoints: (0, _addonKnobs.array)('breakpoints', _mocks.mockedBreakpoints),
priorities: (0, _addonKnobs.array)('priorities', _mocks.mockedPriorities),
card: function card(_ref13) {
var data = _ref13.data,
close = _ref13.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
colored: (0, _addonKnobs.boolean)('colored', true),
onRowClick: (0, _addonActions.action)('row clicked'),
list: (0, _addonKnobs.object)('list', _mocks.mockedList)
});
});
/** Stories of Table with render props row */
(0, _react2.storiesOf)('- Table -|5 - render props row', module)
/** Decorators */
.addDecorator(function (story) {
return _react.default.createElement(_wrappers.StoryWrapper, {
border: (0, _addonKnobs.boolean)('-- wrapper border --', false)
}, story());
}).addDecorator(_addonCentered.default)
/** Stories */
.add('- custom row with a unique children', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
card: function card(_ref14) {
var data = _ref14.data,
close = _ref14.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
breakpoints: _mocks.mockedBreakpoints,
priorities: _mocks.mockedPriorities,
colored: (0, _addonKnobs.boolean)('colored', true),
list: (0, _addonKnobs.object)('list', _mocks.mockedListWithEmptyData),
row: function row(rowProps) {
if (!rowProps.data.name && !rowProps.data.surname && !rowProps.data.info.age) {
return _react.default.createElement(_Row.default, _extends({
id: rowProps.id
}, rowProps, {
onClick: (0, _addonActions.action)('row clicked'),
handleClick: null
}), _react.default.createElement(_components.EmptyRowContent, null, "Hello"));
}
return _react.default.createElement(_Row.default, _extends({}, rowProps, {
onClick: (0, _addonActions.action)('row clicked')
}));
}
});
}).add('- custom row with custom items', function () {
return _react.default.createElement(_index.default, {
titles: (0, _addonKnobs.array)('titles', _mocks.mockedTitles),
keys: (0, _addonKnobs.array)('keys', _mocks.mockedKeys),
card: function card(_ref15) {
var data = _ref15.data,
close = _ref15.close;
return _react.default.createElement(_components.Card, {
close: close,
data: (0, _addonKnobs.object)('card data', data)
});
},
breakpoints: _mocks.mockedBreakpoints,
priorities: _mocks.mockedPriorities,
colored: (0, _addonKnobs.boolean)('colored', true),
list: (0, _addonKnobs.object)('list', _mocks.mockedListWithEmptyData),
row: function row(rowProps) {
if (!rowProps.data.name && !rowProps.data.surname && !rowProps.data.info.age) {
return _react.default.createElement(_Row.default, _extends({}, rowProps, {
id: rowProps.id,
handleClick: null,
items: [_react.default.createElement(_components.EmptyRowContent, null, "Hello"), 'Houhou hou hou'],
colWidths: (0, _addonKnobs.array)('colWidths', [4, 1]),
onClick: (0, _addonActions.action)('row clicked')
}));
}
return _react.default.createElement(_Row.default, _extends({}, rowProps, {
onClick: (0, _addonActions.action)('row clicked')
}));
}
});
}); // .add('- Custom Head (function)', () => (
// <Table
// titles={array('titles', ['Name', 'Surname', 'id'])}
// list={object('list', mockedList)}
// head={Head}
// />
// ))
// .add('- Custom Head (function render props)', () => (
// <Table
// titles={array('titles', ['Name', 'Surname', 'id'])}
// list={object('list', mockedList)}
// head={({ titles }) => (
// <div
// style={{
// display: 'flex',
// justifyContent: 'space-between',
// backgroundColor: '#9fa8da',
// height: '3rem',
// }}
// >
// {titles.map(title => (
// <div>{title}</div>
// ))}
// </div>
// )}
// />
// ));
// --------------------------------------
// .add('custom row', () => (
// <Table
// titles={titles}
// breakpoints={breakpoints}
// priorities={priorities}
// head={props => <Head {...props} />}
// card={data => <Card data={data} />}
// row={data => (
// if (data.prout) {
// return <Row projectId={42}>lala</Row>;
// }
// <Row
// key={data.id}
// id={data.id}
// items={[data.name, data.surname, data.age, data.job, data.sex]}
// breakpoints={breakpoints}
// priorities={priorities}
// />
// )}
// />
// ))
// .add('custom cells', () => (
// <Table>
// <Row>
// <Cell data={list[0].name} breakpoints={breakpoints} priority={1} />
// <Cell data={list[0].surname} breakpoints={breakpoints} priority={2} />
// <div>
// <h3>{list[0].age}</h3>
// </div>
// <Cell data={list[0].sex} />
// </Row>
// <Row>
// <Cell breakpoints={breakpoints} priority={1}>
// <div
// style={{
// width: 200,
// backgroundColor: 'blue',
// height: '100%',
// color: 'white',
// }}
// >
// {list[1].name}
// </div>
// </Cell>
// <Cell data={list[1].surname} breakpoints={breakpoints} priority={2} />
// <Cell data={list[1].age} breakpoints={breakpoints} />
// <Cell data={list[1].sex} breakpoints={breakpoints} />
// </Row>
// <Row>
// <Cell data={list[2].name} breakpoints={breakpoints} />
// <Cell data={list[2].surname} breakpoints={breakpoints} priority={1} />
// <Cell data={list[2].age} breakpoints={breakpoints} />
// <Cell data={list[2].sex} breakpoints={breakpoints} />
// </Row>
// <Row>
// <Cell data={list[3].name} breakpoints={breakpoints} />
// <Cell data={list[3].surname} breakpoints={breakpoints} priority={1} />
// <Cell data={list[3].age} breakpoints={breakpoints} priority={1} />
// <Cell data={list[3].sex} breakpoints={breakpoints} />
// </Row>
// </Table>
// ));
// -------------------------------------
// card={data => (
// <div>
// <ul>
// <li>
// Name:
// {data.name}
// </li>
// <li>
// Surname:
// {data.surname}
// </li>
// <li>
// Age:
// {data.age}
// </li>
// <li>
// Job:
// {data.job}
// </li>
// <li>
// Sex:
// {data.sex}
// </li>
// </ul>
// </div>
// )}
// {list.map(data => (
// <Row
// key={data.id}
// id={data.id}
// items={[data.name, data.surname, data.age, data.job, data.sex]}
// breakpoints={breakpoints}
// priorities={priorities}
// />
// ))}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1RhYmxlL1RhYmxlLnN0b3JpZXMuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiYWRkRGVjb3JhdG9yIiwic3RvcnkiLCJjZW50ZXJlZCIsImFkZCIsIm1vY2tlZExpc3QiLCJtb2NrZWRUaXRsZXMiLCJtb2NrZWRLZXlzIiwibW9ja2VkQnJlYWtwb2ludHMiLCJtb2NrZWRQcmlvcml0aWVzIiwibW9ja2VkQ29sV2lkdGhzIiwiZGF0YSIsImNsb3NlIiwiTG9hZGVyIiwiY29sb3IiLCJwYXJpdHkiLCJmb250V2VpZ2h0IiwiZGVmYXVsdCIsImhvdmVyZWQiLCJzZWxlY3RlZCIsInRpdGxlIiwic29ydGluZ0tleSIsImRpc3BsYXkiLCJub3JtYWxpemUiLCJ0b1VwcGVyQ2FzZSIsImQiLCJwZXRzIiwiam9pbiIsIm9yZGVyIiwibW9ja2VkTGlzdFdpdGhFbXB0eURhdGEiLCJIZWFkIiwidGl0bGVzIiwianVzdGlmeUNvbnRlbnQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJoZWlnaHQiLCJtYXAiLCJIZWFkQ2VsbCIsImlkIiwib25Tb3J0IiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsImluZm8iLCJzZXgiLCJyb3dQcm9wcyIsIm5hbWUiLCJzdXJuYW1lIiwiYWdlIl0sIm1hcHBpbmdzIjoiOztBQUFBOztBQUVBOztBQUNBOztBQUNBOztBQUdBOztBQUdBOztBQVNBOztBQUNBOztBQUdBOztBQUNBOztBQUdBOzs7Ozs7QUFFQTtBQUNBLHVCQUFVLHVCQUFWLEVBQW1DQSxNQUFuQztBQUNFO0FBREYsQ0FFR0MsWUFGSCxDQUVnQixVQUFBQyxLQUFLO0FBQUEsU0FDakIsNkJBQUMsc0JBQUQ7QUFBYyxJQUFBLE1BQU0sRUFBRSx5QkFBUSxzQkFBUixFQUFnQyxLQUFoQztBQUF0QixLQUErREEsS0FBSyxFQUFwRSxDQURpQjtBQUFBLENBRnJCLEVBS0dELFlBTEgsQ0FLZ0JFLHNCQUxoQjtBQU9FO0FBUEYsQ0FRR0MsR0FSSCxDQVFP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O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0Jztcbi8qKiBTdG9yeWJvb2sgSW1wb3J0ICovXG5pbXBvcnQgeyBzdG9yaWVzT2YgfSBmcm9tICdAc3Rvcnlib29rL3JlYWN0JztcbmltcG9ydCBjZW50ZXJlZCBmcm9tICdAc3Rvcnlib29rL2FkZG9uLWNlbnRlcmVkJztcbmltcG9ydCB7XG4gIHRleHQsIG51bWJlciwgYm9vbGVhbiwgYXJyYXksIG9iamVjdCwgY29sb3IsXG59IGZyb20gJ0BzdG9yeWJvb2svYWRkb24ta25vYnMnO1xuaW1wb3J0IHsgYWN0aW9uIH0gZnJvbSAnQHN0b3J5Ym9vay9hZGRvbi1hY3Rpb25zJztcblxuLyoqIENvbXBvbmVudHMgSW1wb3J0ICovXG5pbXBvcnQge1xuICBtb2NrZWRCcmVha3BvaW50cyxcbiAgbW9ja2VkQ29sV2lkdGhzLFxuICBtb2NrZWRLZXlzLFxuICBtb2NrZWRMaXN0LFxuICBtb2NrZWRQcmlvcml0aWVzLFxuICBtb2NrZWRUaXRsZXMsXG4gIG1vY2tlZExpc3RXaXRoRW1wdHlEYXRhLFxufSBmcm9tICdjb25maWcvc3Rvcnlib29rL21vY2tzJztcbmltcG9ydCB7IFN0b3J5V3JhcHBlciB9IGZyb20gJ2NvbmZpZy9zdG9yeWJvb2svd3JhcHBlcnMnO1xuaW1wb3J0IHtcbiAgQ2FyZCwgTG9hZGVyLCBIZWFkLCBIZWFkQ2VsbCwgRW1wdHlSb3dDb250ZW50LFxufSBmcm9tICdjb25maWcvc3Rvcnlib29rL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgb25Tb3J0IH0gZnJvbSAnY29uZmlnL3N0b3J5Ym9vay91dGlscyc7XG5pbXBvcnQgUm93IGZyb20gJ2NvbXBvbmVudHMvUm93Jztcbi8vIGltcG9ydCBDZWxsIGZyb20gJ2NvbXBvbmVudHMvQ2VsbCc7XG4vLyBpbXBvcnQgQ2FyZCBmcm9tICdjb21wb25lbnRzL0NhcmQnO1xuaW1wb3J0IFRhYmxlIGZyb20gJy4vaW5kZXgnO1xuXG4vKiogU3RvcmllcyBvZiBEZWZhdWx0IFRhYmxlICovXG5zdG9yaWVzT2YoJy0gVGFibGUgLXwxIC0gRGVmYXVsdCcsIG1vZHVsZSlcbiAgLyoqIERlY29yYXRvcnMgKi9cbiAgLmFkZERlY29yYXRvcihzdG9yeSA9PiAoXG4gICAgPFN0b3J5V3JhcHBlciBib3JkZXI9e2Jvb2xlYW4oJy0tIHdyYXBwZXIgYm9yZGVyIC0tJywgZmFsc2UpfT57c3RvcnkoKX08L1N0b3J5V3JhcHBlcj5cbiAgKSlcbiAgLmFkZERlY29yYXRvcihjZW50ZXJlZClcblxuICAvKiogU3RvcmllcyAqL1xuICAuYWRkKCcxIC0gRGVmYXVsdCBUYWJsZScsICgpID0+IChc