react-ui-basics 0.0.161 → 0.0.162

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.js CHANGED
@@ -11,7 +11,7 @@ import AutocompleteSelect, { MODE_MULTIPLE_MINI, MODE_DEFAULT } from './Autocomp
11
11
  import Switch from './Switch.js';
12
12
  import { setInterval, classNames, isFunction, NOOP, preventDefault, stopPropagation, Comparators, createRef, isString, orNoop } from './Tools.js';
13
13
  import MaterialIcon from './MaterialIcon.js';
14
- import { componentDidMount, componentDidUpdate, render, state, componentWillUnmount, PureComponent, propsGetter } from './ReactConstants.js';
14
+ import { stateGSs, componentDidMount, componentDidUpdate, render, componentWillUnmount, PureComponent, propsGetter } from './ReactConstants.js';
15
15
 
16
16
  var SORT_ASC = Comparators.SORT_ASC;
17
17
  var SORT_DESC = Comparators.SORT_DESC;
@@ -32,21 +32,22 @@ var Table = /** @class */ (function (_super) {
32
32
  __style(fixed[i]).width = hidden[i].offsetWidth + 'px';
33
33
  }
34
34
  };
35
+ var _a = stateGSs(_this, 5), editingState = _a[0], dataState = _a[1], sortByState = _a[2], sortOrderState = _a[3], comparatorState = _a[4];
35
36
  var cancelEditing = function () {
36
- _this.setState({ editing: false });
37
+ editingState(false);
37
38
  };
38
39
  var setEditing = function (item, columnIndex, field) {
39
- _this.setState({ editing: { id: item.id, value: item[field], columnIndex: columnIndex, item: item, field: field } });
40
+ editingState({ id: item.id, value: item[field], columnIndex: columnIndex, item: item, field: field });
40
41
  };
41
42
  var handleInputChange = function (event) {
42
43
  var target = __target(event);
43
44
  var value = target.type === 'checkbox' ? target.checked : __value(target);
44
- _this.setState({ editing: __extends(__extends({}, state(_this).editing), { value: value }) });
45
+ editingState(__extends(__extends({}, editingState()), { value: value }));
45
46
  };
46
47
  var onFinishEditing = function () {
47
48
  var _a;
48
- var editing = state(_this).editing;
49
- if (editing.value === null)
49
+ var editing = editingState();
50
+ if (__value(editing) === null)
50
51
  return;
51
52
  var value = __value(editing);
52
53
  if (isString(value))
@@ -54,40 +55,38 @@ var Table = /** @class */ (function (_super) {
54
55
  if (value === editing.item[editing.field])
55
56
  return cancelEditing();
56
57
  var updated = __extends(__extends({}, editing.item), (_a = {}, _a[editing.field] = value, _a));
57
- props().onChange(updated, cancelEditing);
58
+ props()[ReactConstants[7]](updated, cancelEditing);
58
59
  };
59
60
  var setValue = function (value) {
60
- _this.setState({ editing: __extends(__extends({}, state(_this).editing), { value: value }) }, onFinishEditing);
61
+ editingState(__extends(__extends({}, editingState()), { value: value }), onFinishEditing);
61
62
  };
62
- var setData = function (data) {
63
- var _a = state(_this), sortBy = _a.sortBy, sortOrder = _a.sortOrder, comparator = _a.comparator;
64
- data = __toConsumableArray(data, true);
63
+ var setData = function (data, sortBy, sortOrder, comparator) {
64
+ data = data ? __toConsumableArray(data, true) : [];
65
+ sortBy = sortBy || sortByState();
66
+ sortOrder = sortOrder || sortOrderState();
67
+ comparator = comparator || comparatorState();
65
68
  if (sortBy) {
66
69
  var c = comparator;
67
70
  if (c && sortOrder === SORT_DESC)
68
71
  c = Comparators.inverse(c);
69
72
  data.sort(c || Comparators.of(sortBy, sortOrder, data));
70
73
  }
71
- _this.setState({ data: data }, function () {
74
+ sortOrderState(sortOrder);
75
+ comparatorState(comparator);
76
+ sortByState(sortBy);
77
+ dataState(data, function () {
72
78
  orNoop(props().onSortChange)(sortBy, sortOrder);
73
79
  });
74
80
  };
75
81
  var sort = function (e, sortBy, comparator) {
76
82
  preventDefault(e);
77
- _this.setState({
78
- sortOrder: state(_this).sortBy === sortBy && state(_this).sortOrder === SORT_ASC ? SORT_DESC : SORT_ASC,
79
- comparator: comparator,
80
- sortBy: sortBy
81
- }, function () { return setData(__data(state(_this))); });
83
+ var sortOrder = sortByState() === sortBy && sortOrderState() === SORT_ASC ? SORT_DESC : SORT_ASC;
84
+ setData(dataState(), sortBy, sortOrder, comparator);
82
85
  };
83
86
  _this[ReactConstants[0]] = function () {
84
87
  var _a;
85
88
  var _b = props(), sortBy = _b.sortBy, _c = _b.sortOrder, sortOrder = _c === void 0 ? SORT_ASC : _c, columns = _b.columns;
86
- _this.setState({
87
- sortBy: sortBy,
88
- sortOrder: sortOrder,
89
- comparator: (_a = columns.find(function (it) { return it.field === sortBy; })) === null || _a === void 0 ? void 0 : _a.comparator
90
- }, function () { return setData(__props(_this).data); });
89
+ setData(dataState(), sortBy, sortOrder, (_a = columns.find(function (it) { return it.field === sortBy; })) === null || _a === void 0 ? void 0 : _a.comparator);
91
90
  updateHeaders();
92
91
  updateHeadersInterval = setInterval(updateHeaders, 1000);
93
92
  };
@@ -95,11 +94,7 @@ var Table = /** @class */ (function (_super) {
95
94
  var _a;
96
95
  var _b = props(), sortBy = _b.sortBy, sortOrder = _b.sortOrder, columns = _b.columns, data = __data(_b);
97
96
  if (sortBy !== prevProps.sortBy || sortOrder !== prevProps.sortOrder) {
98
- _this.setState({
99
- sortBy: sortBy,
100
- sortOrder: sortOrder || SORT_ASC,
101
- comparator: (_a = columns.find(function (it) { return it.field === sortBy; })) === null || _a === void 0 ? void 0 : _a.comparator
102
- }, function () { return setData(data); });
97
+ setData(dataState(), sortBy, sortOrder || SORT_ASC, (_a = columns.find(function (it) { return it.field === sortBy; })) === null || _a === void 0 ? void 0 : _a.comparator);
103
98
  }
104
99
  else if (data !== __data(prevProps)) {
105
100
  setData(data);
@@ -108,11 +103,14 @@ var Table = /** @class */ (function (_super) {
108
103
  };
109
104
  _this[ReactConstants[3]] = function () {
110
105
  var _a = props(), _b = _a.columns, columns = _b === void 0 ? [] : _b, _c = _a.onRowClick, onRowClick = _c === void 0 ? NOOP : _c, disabled = _a.disabled, className = _a[ReactConstants[5]], rowClassName = _a.rowClassName, _d = _a.toKey, toKey = _d === void 0 ? getId : _d;
111
- var _e = state(_this), sortBy = _e.sortBy, sortOrder = _e.sortOrder, _f = __data(_e), data = _f === void 0 ? [] : _f, editing = _e.editing;
106
+ var sortBy = sortByState();
107
+ var sortOrder = sortOrderState();
108
+ var editing = editingState();
109
+ var data = dataState() || [];
112
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) {
113
111
  var sortable = column.sortable || column.sortable == null;
114
- return (jsxRuntime_1("th", __extends({ onClick: 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));
115
- }) })) }), 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, onClick: onRowClick, [ReactConstants[5]]: rowClassName, columns: columns, setEditing: setEditing, cancelEditing: cancelEditing, onFinishEditing: onFinishEditing, handleInputChange: handleInputChange, setValue: setValue }, toKey(item))); }) })] })));
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));
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))); }) })] })));
116
114
  };
117
115
  _this[ReactConstants[1]] = function () {
118
116
  clearInterval(updateHeadersInterval);
@@ -123,12 +121,8 @@ var Table = /** @class */ (function (_super) {
123
121
  }(Component));
124
122
  var formatValue = function (item, column) {
125
123
  var value = item[column.field];
126
- if (column.formatter) {
127
- return column.formatter(value, item, column.format);
128
- }
129
- else {
130
- return '' + value;
131
- }
124
+ var formatter = column.formatter;
125
+ return formatter ? formatter(value, item, column.format) : '' + value;
132
126
  };
133
127
  var Row = /** @class */ (function (_super) {
134
128
  __inherits(Row, _super);
@@ -136,11 +130,11 @@ var Row = /** @class */ (function (_super) {
136
130
  return _super !== null && _super.apply(this, arguments) || this;
137
131
  }
138
132
  Row.prototype[ReactConstants[3]] = function () {
139
- var _a = __props(this), item = _a.item, disabled = _a.disabled, editing = _a.editing, onClick = _a.onClick, className = _a[ReactConstants[5]], columns = _a.columns, setEditing = _a.setEditing, cancelEditing = _a.cancelEditing, onFinishEditing = _a.onFinishEditing, handleInputChange = _a.handleInputChange, setValue = _a.setValue;
140
- return jsxRuntime_2("tr", __extends({ onClick: function (e) { return onClick(item); }, [ReactConstants[5]]: classNames(disabled && disabled(item) && 'disabled', className && (isFunction(className) ? className(item) : className)) }, { [ReactConstants[4]]: columns.filter(function (it) { return !!it; }).map(function (column, i) {
133
+ var _a = __props(this), item = _a.item, disabled = _a.disabled, editing = _a.editing, onClick = _a[ReactConstants[6]], className = _a[ReactConstants[5]], columns = _a.columns, setEditing = _a.setEditing, cancelEditing = _a.cancelEditing, onFinishEditing = _a.onFinishEditing, handleInputChange = _a.handleInputChange, setValue = _a.setValue;
134
+ return jsxRuntime_2("tr", __extends({ [ReactConstants[6]]: function (e) { return onClick(item); }, [ReactConstants[5]]: classNames(disabled && disabled(item) && 'disabled', className && (isFunction(className) ? className(item) : className)) }, { [ReactConstants[4]]: columns.filter(function (it) { return !!it; }).map(function (column, i) {
141
135
  var isEditing = editing && editing.columnIndex === i;
142
136
  var editable = isFunction(column.editable) ? column.editable(item) : !!column.editable;
143
- return (jsxRuntime_1("td", __extends({ [ReactConstants[5]]: classNames(editable ? 'editable' : 'ro', isEditing && 'editing', column[ReactConstants[5]]), onClick: !isEditing && editable ? function () { return setEditing(item, i, column.field); } : NOOP }, { [ReactConstants[4]]: [(isEditing || column.displayEditor) && !column.editor && (jsxRuntime_2(TextField, { value: column.preEditor ? column.preEditor(__value(editing)) : __value(editing), focused: true, onBlur: cancelEditing, onChange: handleInputChange, onKeyDown: function (e) {
137
+ return (jsxRuntime_1("td", __extends({ [ReactConstants[5]]: classNames(editable ? 'editable' : 'ro', isEditing && 'editing', column[ReactConstants[5]]), [ReactConstants[6]]: !isEditing && editable ? function () { return setEditing(item, i, column.field); } : NOOP }, { [ReactConstants[4]]: [(isEditing || column.displayEditor) && !column.editor && (jsxRuntime_2(TextField, { value: column.preEditor ? column.preEditor(__value(editing)) : __value(editing), focused: true, onBlur: cancelEditing, [ReactConstants[7]]: handleInputChange, onKeyDown: function (e) {
144
138
  if (e.keyCode === 27 /*escape*/) {
145
139
  preventDefault(e);
146
140
  cancelEditing();
@@ -149,7 +143,7 @@ var Row = /** @class */ (function (_super) {
149
143
  preventDefault(e);
150
144
  onFinishEditing();
151
145
  }
152
- } })), (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, onChange: 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, { onClick: 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.editorChildCompononRowClickent, onCancel: cancelEditing, prefilter: column.prefilter })), (isEditing || column.displayEditor) && column.editor === editorSwitch && (jsxRuntime_2(Switch, { [ReactConstants[6]]: function (e) {
153
147
  stopPropagation(e);
154
148
  preventDefault(e);
155
149
  setValue(!item[column.field]);
package/TextField.js CHANGED
@@ -37,7 +37,7 @@ var TextField = function (_PureComponent) {
37
37
  return error;
38
38
  };
39
39
  var onChange = function onChange(e) {
40
- orNoop(props().onChange)(e);
40
+ orNoop(props()[ReactConstants[7]])(e);
41
41
  isWithValue(!!__value(inputRef()));
42
42
  check();
43
43
  };
@@ -61,7 +61,7 @@ var TextField = function (_PureComponent) {
61
61
  required = _props.required,
62
62
  min = _props.min,
63
63
  max = _props.max,
64
- onClick = _props.onClick,
64
+ onClick = _props[ReactConstants[6]],
65
65
  onKeyDown = _props.onKeyDown,
66
66
  onKeyUp = _props.onKeyUp,
67
67
  onMouseUp = _props.onMouseUp,
@@ -72,7 +72,7 @@ var TextField = function (_PureComponent) {
72
72
  var error = errorState();
73
73
  return ReactCreateElement("div", {
74
74
  [ReactConstants[5]]: classNames('TextField', isFocused() && 'focused', (value || placeholder || isWithValue() && isUndefined(value)) && 'withValue', error && (required || check) && 'errored', disabled && 'disabled', label && 'withLabel', className),
75
- onClick: function onClick() {
75
+ [ReactConstants[6]]: function onClick() {
76
76
  inputRef().focus();
77
77
  }
78
78
  }, label && ReactCreateElement("label", {
@@ -87,10 +87,10 @@ var TextField = function (_PureComponent) {
87
87
  min: min,
88
88
  max: max,
89
89
  ref: inputRef,
90
- onChange: onChange,
90
+ [ReactConstants[7]]: onChange,
91
91
  onFocus: onFocus,
92
92
  onBlur: onBlur,
93
- onClick: onClick,
93
+ [ReactConstants[6]]: onClick,
94
94
  onKeyDown: onKeyDown,
95
95
  onKeyUp: onKeyUp,
96
96
  onMouseUp: onMouseUp,
@@ -142,11 +142,11 @@ if (process.env.NODE_ENV !== 'production') {
142
142
  placeholder: PropTypes.string,
143
143
  label: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
144
144
  check: PropTypes.func,
145
- onClick: PropTypes.func,
145
+ [ReactConstants[6]]: PropTypes.func,
146
146
  onKeyDown: PropTypes.func,
147
147
  onFocus: PropTypes.func,
148
148
  onBlur: PropTypes.func,
149
- onChange: PropTypes.func,
149
+ [ReactConstants[7]]: PropTypes.func,
150
150
  required: PropTypes.bool,
151
151
  disabled: PropTypes.bool,
152
152
  min: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),