react-ui-basics 0.0.162 → 0.0.165

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/Table.d.ts CHANGED
@@ -19,7 +19,7 @@ export interface RowProps<T> {
19
19
  setValue: (v: any) => void;
20
20
  setEditing: (t: T, i: number, field: string) => void;
21
21
  }
22
- export declare type Formatter<T, V> = ((value?: V, item?: T, format?: string) => ReactElement) | ((value: V, item: T) => ReactElement) | ((value: V) => ReactElement);
22
+ export declare type Formatter<T, V> = ((value?: V, item?: T, format?: string) => ReactElement | string) | ((value: V, item: T) => ReactElement | string) | ((value: V) => ReactElement | string);
23
23
  export interface TableColumn<T> {
24
24
  field?: string;
25
25
  className?: string;
@@ -55,4 +55,12 @@ export interface TableState<T> {
55
55
  declare class Table<T> extends Component<TableProps<T>, TableState<T>> {
56
56
  constructor(properties: any);
57
57
  }
58
+ export interface TableColumnSelect extends TableColumn<any> {
59
+ editorData?: any;
60
+ multiSelect?: any;
61
+ onSelect?: any;
62
+ editorSelectedComponent?: any;
63
+ editorChildCompononent?: any;
64
+ prefilter?: any;
65
+ }
58
66
  export default Table;
package/Table.js CHANGED
@@ -5,11 +5,12 @@ import { jsxs as jsxRuntime_1, jsx as jsxRuntime_2 } from 'react/jsx-runtime';
5
5
  import {toConsumableArray as __toConsumableArray} from "./_virtual/_rollupPluginBabelHelpers";
6
6
  import {extends as __extends} from "./_virtual/_rollupPluginBabelHelpers";
7
7
  import {inherits as __inherits} from "./_virtual/_rollupPluginBabelHelpers";
8
+ import './Table.css';
8
9
  import { Component } from 'react';
9
10
  import TextField from './TextField.js';
10
11
  import AutocompleteSelect, { MODE_MULTIPLE_MINI, MODE_DEFAULT } from './AutocompleteSelect.js';
11
12
  import Switch from './Switch.js';
12
- import { setInterval, classNames, isFunction, NOOP, preventDefault, stopPropagation, Comparators, createRef, isString, orNoop } from './Tools.js';
13
+ import { setInterval, classNames, isFunction, NOOP, preventDefault, stopPropagation, Comparators, createRef, createAccessor, isString, orNoop } from './Tools.js';
13
14
  import MaterialIcon from './MaterialIcon.js';
14
15
  import { stateGSs, componentDidMount, componentDidUpdate, render, componentWillUnmount, PureComponent, propsGetter } from './ReactConstants.js';
15
16
 
@@ -33,6 +34,7 @@ var Table = /** @class */ (function (_super) {
33
34
  }
34
35
  };
35
36
  var _a = stateGSs(_this, 5), editingState = _a[0], dataState = _a[1], sortByState = _a[2], sortOrderState = _a[3], comparatorState = _a[4];
37
+ var comparatorGetter = createAccessor('comparator');
36
38
  var cancelEditing = function () {
37
39
  editingState(false);
38
40
  };
@@ -84,17 +86,15 @@ var Table = /** @class */ (function (_super) {
84
86
  setData(dataState(), sortBy, sortOrder, comparator);
85
87
  };
86
88
  _this[ReactConstants[0]] = function () {
87
- var _a;
88
- var _b = props(), sortBy = _b.sortBy, _c = _b.sortOrder, sortOrder = _c === void 0 ? SORT_ASC : _c, columns = _b.columns;
89
- setData(dataState(), sortBy, sortOrder, (_a = columns.find(function (it) { return it.field === sortBy; })) === null || _a === void 0 ? void 0 : _a.comparator);
89
+ var _a = props(), sortBy = _a.sortBy, _b = _a.sortOrder, sortOrder = _b === void 0 ? SORT_ASC : _b, columns = _a.columns, data = __data(_a);
90
+ setData(data, sortBy, sortOrder, comparatorGetter(columns.find(function (it) { return it.field === sortBy; })));
90
91
  updateHeaders();
91
92
  updateHeadersInterval = setInterval(updateHeaders, 1000);
92
93
  };
93
94
  _this[ReactConstants[2]] = function (prevProps, prevState, snapshot) {
94
- var _a;
95
- var _b = props(), sortBy = _b.sortBy, sortOrder = _b.sortOrder, columns = _b.columns, data = __data(_b);
95
+ var _a = props(), sortBy = _a.sortBy, sortOrder = _a.sortOrder, columns = _a.columns, data = __data(_a);
96
96
  if (sortBy !== prevProps.sortBy || sortOrder !== prevProps.sortOrder) {
97
- setData(dataState(), sortBy, sortOrder || SORT_ASC, (_a = columns.find(function (it) { return it.field === sortBy; })) === null || _a === void 0 ? void 0 : _a.comparator);
97
+ setData(dataState(), sortBy, sortOrder || SORT_ASC, comparatorGetter(columns.find(function (it) { return it.field === sortBy; })));
98
98
  }
99
99
  else if (data !== __data(prevProps)) {
100
100
  setData(data);
@@ -109,7 +109,7 @@ var Table = /** @class */ (function (_super) {
109
109
  var data = dataState() || [];
110
110
  return (jsxRuntime_1("table", __extends({ [ReactConstants[5]]: classNames("Table", className) }, { [ReactConstants[4]]: [jsxRuntime_2("thead", { [ReactConstants[4]]: jsxRuntime_2("tr", __extends({ ref: headers }, { [ReactConstants[4]]: columns.filter(function (it) { return !!it; }).map(function (column, i) {
111
111
  var sortable = column.sortable || column.sortable == null;
112
- return (jsxRuntime_1("th", __extends({ [ReactConstants[6]]: function (e) { return sortable && sort(e, column.field, column.comparator); } }, { [ReactConstants[4]]: [jsxRuntime_1("div", __extends({ [ReactConstants[5]]: classNames('hidden', sortable && 'sortable', sortBy === column.field && 'active') }, { [ReactConstants[4]]: [column.header, column.header && sortBy === column.field && sortOrder === SORT_ASC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_up' })), column.header && sortBy === column.field && sortOrder === SORT_DESC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_down' }))] })), jsxRuntime_1("div", __extends({ [ReactConstants[5]]: classNames('fixed', sortable && 'sortable', sortBy === column.field && 'active') }, { [ReactConstants[4]]: [column.header, column.header && sortBy === column.field && sortOrder === SORT_ASC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_up' })), column.header && sortBy === column.field && sortOrder === SORT_DESC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_down' }))] }))] }), i));
112
+ return (jsxRuntime_1("th", __extends({ [ReactConstants[6]]: function (e) { return sortable && sort(e, column.field, comparatorGetter(column)); } }, { [ReactConstants[4]]: [jsxRuntime_1("div", __extends({ [ReactConstants[5]]: classNames('hidden', sortable && 'sortable', sortBy === column.field && 'active') }, { [ReactConstants[4]]: [column.header, column.header && sortBy === column.field && sortOrder === SORT_ASC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_up' })), column.header && sortBy === column.field && sortOrder === SORT_DESC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_down' }))] })), jsxRuntime_1("div", __extends({ [ReactConstants[5]]: classNames('fixed', sortable && 'sortable', sortBy === column.field && 'active') }, { [ReactConstants[4]]: [column.header, column.header && sortBy === column.field && sortOrder === SORT_ASC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_up' })), column.header && sortBy === column.field && sortOrder === SORT_DESC && (jsxRuntime_2(MaterialIcon, { icon: 'keyboard_arrow_down' }))] }))] }), i));
113
113
  }) })) }), jsxRuntime_2("tbody", { [ReactConstants[4]]: data.map(function (item) { return (jsxRuntime_2(Row, { item: item, disabled: disabled, editing: editing && editing.id === toKey(item) ? editing : null, [ReactConstants[6]]: onRowClick, [ReactConstants[5]]: rowClassName, columns: columns, setEditing: setEditing, cancelEditing: cancelEditing, onFinishEditing: onFinishEditing, handleInputChange: handleInputChange, setValue: setValue }, toKey(item))); }) })] })));
114
114
  };
115
115
  _this[ReactConstants[1]] = function () {
@@ -143,7 +143,7 @@ var Row = /** @class */ (function (_super) {
143
143
  preventDefault(e);
144
144
  onFinishEditing();
145
145
  }
146
- } })), (isEditing || column.displayEditor) && column.editor === editorSelect && (jsxRuntime_2(AutocompleteSelect, { value: column.preEditor ? column.preEditor(__value(editing)) : __value(editing), data: column.editorData, focused: true, withArrow: false, withFilter: false, selectedMode: 'inline', selectedComponent: column.editorSelectedComponent, mode: column.multiSelect ? MODE_MULTIPLE_MINI : MODE_DEFAULT, [ReactConstants[7]]: column.multiSelect && (column.onSelect ? (function (value) { return setValue(column.onSelect(value)); }) : setValue), onSelect: !column.multiSelect && (column.onSelect ? (function (value) { return setValue(column.onSelect(value)); }) : setValue), childComponent: column.editorChildCompononRowClickent, onCancel: cancelEditing, prefilter: column.prefilter })), (isEditing || column.displayEditor) && column.editor === editorSwitch && (jsxRuntime_2(Switch, { [ReactConstants[6]]: function (e) {
146
+ } })), (isEditing || column.displayEditor) && column.editor === editorSelect && (jsxRuntime_2(AutocompleteSelect, { value: column.preEditor ? column.preEditor(__value(editing)) : __value(editing), data: column.editorData, focused: true, withArrow: false, withFilter: false, selectedMode: 'inline', selectedComponent: column.editorSelectedComponent, mode: column.multiSelect ? MODE_MULTIPLE_MINI : MODE_DEFAULT, [ReactConstants[7]]: column.multiSelect && (column.onSelect ? (function (value) { return setValue(column.onSelect(value)); }) : setValue), onSelect: !column.multiSelect && (column.onSelect ? (function (value) { return setValue(column.onSelect(value)); }) : setValue), childComponent: column.editorChildCompononent, onCancel: cancelEditing, prefilter: column.prefilter })), (isEditing || column.displayEditor) && column.editor === editorSwitch && (jsxRuntime_2(Switch, { [ReactConstants[6]]: function (e) {
147
147
  stopPropagation(e);
148
148
  preventDefault(e);
149
149
  setValue(!item[column.field]);
package/TextField.js CHANGED
@@ -4,6 +4,7 @@ import { inherits as _inherits, createSuper as _createSuper, classCallCheck as _
4
4
  import {toConsumableArray as __toConsumableArray} from "./_virtual/_rollupPluginBabelHelpers";
5
5
  import {extends as __extends} from "./_virtual/_rollupPluginBabelHelpers";
6
6
  import {inherits as __inherits} from "./_virtual/_rollupPluginBabelHelpers";
7
+ import './TextField.css';
7
8
  import 'react';
8
9
  import ReactCreateElement from './ReactCreateElement.js';
9
10
  import { classNames, isUndefined, orNoop, addEventListener, getRandomId, createRef, setTimeout } from './Tools.js';
package/Tools.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export declare const WINDOW: any;
2
2
  export declare const DOCUMENT: any;
3
- export declare function classNames(...classes: Array<string | number | boolean | null>): string;
3
+ export declare function classNames(...classes: Array<string | number | boolean | null | void>): string;
4
4
  export declare const NOOP: () => void;
5
5
  export declare const orNoop: <T>(f: (...a: any) => T) => (() => void) | ((...a: any) => T);
6
6
  export declare const getRandomId: (prefix: any) => any;
package/Tools.js CHANGED
@@ -32,6 +32,9 @@ var createRef = function (initialValue) {
32
32
  return v;
33
33
  };
34
34
  };
35
+ var createAccessor = function (field) { return function (o, value) {
36
+ return !o ? null : value != UNDEFINED ? o[field] = value : o[field];
37
+ }; };
35
38
  var setOf = function (list) { return (list || []).reduce(function (map, key) {
36
39
  map[key] = true;
37
40
  return map;
@@ -229,5 +232,5 @@ if (process.env.NODE_ENV !== 'production') {
229
232
  };
230
233
  }
231
234
 
232
- export { Comparators, DOCUMENT, NOOP, UNDEFINED, WINDOW, addEventListener, allPropsExcept, classNames, clearInterval, clearTimeout, continuousIncludes, createRef, debounce, getRandomId, isDifferent, isFunction, isObject, isString, isUndefined, memo, orNoop, preventDefault, ref, removeEventListener, requestAnimationFrame, setInterval, setOf, setTimeout, stopPropagation, typeOf };
235
+ export { Comparators, DOCUMENT, NOOP, UNDEFINED, WINDOW, addEventListener, allPropsExcept, classNames, clearInterval, clearTimeout, continuousIncludes, createAccessor, createRef, debounce, getRandomId, isDifferent, isFunction, isObject, isString, isUndefined, memo, orNoop, preventDefault, ref, removeEventListener, requestAnimationFrame, setInterval, setOf, setTimeout, stopPropagation, typeOf };
233
236
  //# sourceMappingURL=Tools.js.map