ywana-core8 0.0.136 → 0.0.140
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/dist/index.cjs +44 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +12 -0
- package/dist/index.css.map +1 -1
- package/dist/index.modern.js +44 -11
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +44 -11
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/domain/ContentEditor.js +1 -1
- package/src/html/textfield-outlined.css +6 -0
- package/src/html/textfield.css +6 -0
- package/src/html/textfield.js +38 -19
package/dist/index.cjs
CHANGED
@@ -924,7 +924,9 @@ var DropDown = function DropDown(props) {
|
|
924
924
|
_props$options = props.options,
|
925
925
|
options = _props$options === void 0 ? [] : _props$options,
|
926
926
|
value = props.value,
|
927
|
-
onChange = props.onChange
|
927
|
+
onChange = props.onChange,
|
928
|
+
_props$canFilter = props.canFilter,
|
929
|
+
canFilter = _props$canFilter === void 0 ? false : _props$canFilter;
|
928
930
|
|
929
931
|
var _useState = React.useState(false),
|
930
932
|
open = _useState[0],
|
@@ -934,6 +936,10 @@ var DropDown = function DropDown(props) {
|
|
934
936
|
label = _useState2[0],
|
935
937
|
setLabel = _useState2[1];
|
936
938
|
|
939
|
+
var _useState3 = React.useState(),
|
940
|
+
filter = _useState3[0],
|
941
|
+
setFilter = _useState3[1];
|
942
|
+
|
937
943
|
React.useEffect(function () {
|
938
944
|
if (Array.isArray(options)) {
|
939
945
|
var option = options.find(function (option) {
|
@@ -943,6 +949,16 @@ var DropDown = function DropDown(props) {
|
|
943
949
|
}
|
944
950
|
}, [value]);
|
945
951
|
|
952
|
+
function change(id, value) {
|
953
|
+
console.log('dropdown change > canFilter:', canFilter, id, value);
|
954
|
+
|
955
|
+
if (canFilter) {
|
956
|
+
setFilter(value);
|
957
|
+
} else {
|
958
|
+
if (onChange) onChange(id, value);
|
959
|
+
}
|
960
|
+
}
|
961
|
+
|
946
962
|
function toggle() {
|
947
963
|
if (site) {
|
948
964
|
site.changeFocus({
|
@@ -965,24 +981,40 @@ var DropDown = function DropDown(props) {
|
|
965
981
|
setOpen(false);
|
966
982
|
}
|
967
983
|
|
984
|
+
function renderOptions() {
|
985
|
+
var canShow = open == true && Array.isArray(options);
|
986
|
+
|
987
|
+
if (canShow) {
|
988
|
+
var filterActive = canFilter && label && label.length > 0;
|
989
|
+
var items = filterActive ? options.filter(function (option) {
|
990
|
+
return canFilter === false || filter.toUpperCase().indexOf(option.label.toUpperCase()) >= 0;
|
991
|
+
}) : options;
|
992
|
+
var lis = items.map(function (option) {
|
993
|
+
return /*#__PURE__*/React__default["default"].createElement("li", {
|
994
|
+
key: option.value,
|
995
|
+
value: option.value
|
996
|
+
}, option.label);
|
997
|
+
});
|
998
|
+
return /*#__PURE__*/React__default["default"].createElement("menu", null, /*#__PURE__*/React__default["default"].createElement("ul", {
|
999
|
+
onClick: select
|
1000
|
+
}, lis));
|
1001
|
+
} else {
|
1002
|
+
return null;
|
1003
|
+
}
|
1004
|
+
}
|
1005
|
+
|
968
1006
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
969
1007
|
className: "dropdown"
|
970
1008
|
}, /*#__PURE__*/React__default["default"].createElement(TextField, _extends({}, props, {
|
971
1009
|
onClick: toggle,
|
972
|
-
value: label
|
1010
|
+
value: label,
|
1011
|
+
onChange: change
|
973
1012
|
})), /*#__PURE__*/React__default["default"].createElement(Icon, {
|
974
1013
|
icon: "expand_more",
|
975
1014
|
clickable: true,
|
976
1015
|
size: "small",
|
977
1016
|
action: toggle
|
978
|
-
}),
|
979
|
-
onClick: select
|
980
|
-
}, Array.isArray(options) ? options.map(function (option) {
|
981
|
-
return /*#__PURE__*/React__default["default"].createElement("li", {
|
982
|
-
key: option.value,
|
983
|
-
value: option.value
|
984
|
-
}, option.label);
|
985
|
-
}) : null)) : null);
|
1017
|
+
}), renderOptions());
|
986
1018
|
};
|
987
1019
|
|
988
1020
|
var isFunction$1 = function isFunction(value) {
|
@@ -2945,7 +2977,8 @@ var StringEditor = function StringEditor(_ref6) {
|
|
2945
2977
|
value: value,
|
2946
2978
|
onChange: change,
|
2947
2979
|
options: buildOptions(),
|
2948
|
-
readOnly: !editable
|
2980
|
+
readOnly: !editable,
|
2981
|
+
canFilter: true
|
2949
2982
|
}) : /*#__PURE__*/React__default["default"].createElement(TextField, {
|
2950
2983
|
outlined: outlined,
|
2951
2984
|
id: id,
|