Skip to content

Commit

Permalink
Merge pull request #24 from ngduc/basic-formatter-3
Browse files Browse the repository at this point in the history
refactor: separated tabulator styles; refactored MultiValueFormatter;
  • Loading branch information
ngduc committed Nov 14, 2018
2 parents 3352f1d + 1315b59 commit ad9c0ab
Show file tree
Hide file tree
Showing 15 changed files with 100 additions and 2,348 deletions.
10 changes: 6 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
## [0.6.11] - 2018-11-13
## [0.7.0] - 2018-11-13

### Added
- MultiValuesFormatter
- MultiValueFormatter
### Changed
- BREAKING: moved "css" directory out of "lib" - usage: import "react-tabulator/styles.css";
- fix: upgraded default styles.css to 4.1.1
- BREAKING: moved "css" directory out of "lib" - usage: import "react-tabulator/styles.css"
- BREAKING: separated required styles.css and tabulator theme css (import them separately)
- upgraded tabulator to 4.1.2
- fix: upgraded default styles.css to 4.1.2

## [0.6.6] - 2018-11-05

Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,16 @@ Plus:
- Tslint
- Jest-puppeteer for testing
- React Cell Editors: DateEditor, etc.
- React Cell Formatters: MultiValuesFormatter, etc.
- React Cell Formatters: MultiValueFormatter, etc.
- React Filters (TBD)

### 📦 Usage

```JS
$ npm install react-tabulator

import 'react-tabulator/lib/styles.css'; // default theme
import 'react-tabulator/lib/styles.css'; // required styles
import 'react-tabulator/lib/css/tabulator.min.css'; // theme
import { ReactTabulator } from 'react-tabulator'; // for React 15.x, use import { React15Tabulator }

<ReactTabulator data={data} />
Expand Down
5 changes: 3 additions & 2 deletions demo/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ import React, { Component } from 'react';
import { render } from 'react-dom';
import './styles.css';

// import '../../styles.css'; // default styles
import '../../css/bootstrap/tabulator_bootstrap.min.css'; // use Theme(s)
import '../../styles.css'; // required styles
// import '../../css/tabulator.min.css'; // tabulator theme
import '../../css/bootstrap/tabulator_bootstrap.min.css'; // bootstrap theme

import { ReactTabulatorExample } from '../../lib';
// import { ReactTabulator, ReactTabulatorExample } from '../../lib';
Expand Down
4 changes: 2 additions & 2 deletions lib/ReactTabulatorExample.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ var _a;
var React = require("react");
var ReactTabulator_1 = require("./ReactTabulator");
var DateEditor_1 = require("./editors/DateEditor");
var MultiValuesFormatter_1 = require("./formatters/MultiValuesFormatter");
var MultiValueFormatter_1 = require("./formatters/MultiValueFormatter");
var columns = [
{ title: 'Name', field: 'name', width: 150 },
{ title: 'Age', field: 'age', align: 'left', formatter: 'progress' },
Expand Down Expand Up @@ -58,7 +58,7 @@ var editableColumns = [
headerFilterParams: { values: colorOptions }
},
{ title: 'Date Of Birth', field: 'dob', editor: DateEditor_1["default"], editorParams: { format: 'MM/dd/yyyy' } },
{ title: 'Pets', field: 'pets', formatter: MultiValuesFormatter_1["default"] },
{ title: 'Pets', field: 'pets', formatter: MultiValueFormatter_1["default"], formatterParams: { style: 'PILL' } },
{ title: 'Passed?', field: 'passed', align: 'center', formatter: 'tickCross', editor: true }
];
var default_1 = /** @class */ (function (_super) {
Expand Down
26 changes: 26 additions & 0 deletions lib/formatters/MultiValueFormatter.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
"use strict";
exports.__esModule = true;
var React = require("react");
var react_dom_1 = require("react-dom");
var createCellEl = function () {
var el = document.createElement('div');
el.style.height = '100%';
return el;
};
// example: { title: 'Pets', field: 'pets', formatter: MultiValueFormatter, formatterParams: { style: 'PILL' } }
// default style: comma separated plain text
// other styles: TAG, PILL
function default_1(cell, formatterParams, onRendered) {
var style = formatterParams.style || ''; // comma separated plain text
var arr = cell.getValue() || [];
var content = arr.join(', ');
if (style === 'PILL') {
content = (React.createElement(React.Fragment, null, arr.map(function (value) { return (React.createElement("span", null, value)); })));
}
var el = createCellEl();
el.className = 'multi-value-formatter-content';
el.title = arr.join(', ');
react_dom_1.render(content, el);
return el;
}
exports["default"] = default_1;
16 changes: 0 additions & 16 deletions lib/formatters/MultiValuesFormatter.js

This file was deleted.

Loading

0 comments on commit ad9c0ab

Please sign in to comment.