288a54eeace584e1e84ba586dde9fce98e491a46b35fef245d2d77a54b0ea047c42dd8faa97e34d50b967bbb53d29f7beec0d8f60fe5e9c15ef2a48112bdc4 1001 B

12345678910111213141516171819202122232425262728293031323334
  1. /**
  2. * Adds appropriate CSS class to table cell, based on cellProperties
  3. */
  4. import {addClass, removeClass} from './../helpers/dom/element';
  5. function cellDecorator(instance, TD, row, col, prop, value, cellProperties) {
  6. if (cellProperties.className) {
  7. if (TD.className) {
  8. TD.className = `${TD.className} ${cellProperties.className}`;
  9. } else {
  10. TD.className = cellProperties.className;
  11. }
  12. }
  13. if (cellProperties.readOnly) {
  14. addClass(TD, cellProperties.readOnlyCellClassName);
  15. }
  16. if (cellProperties.valid === false && cellProperties.invalidCellClassName) {
  17. addClass(TD, cellProperties.invalidCellClassName);
  18. } else {
  19. removeClass(TD, cellProperties.invalidCellClassName);
  20. }
  21. if (cellProperties.wordWrap === false && cellProperties.noWordWrapClassName) {
  22. addClass(TD, cellProperties.noWordWrapClassName);
  23. }
  24. if (!value && cellProperties.placeholder) {
  25. addClass(TD, cellProperties.placeholderCellClassName);
  26. }
  27. }
  28. export default cellDecorator;