ywana-core8 0.0.732 → 0.0.734
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 +69 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +21 -0
- package/dist/index.css.map +1 -1
- package/dist/index.modern.js +68 -2
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +69 -1
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/html/list.js +2 -1
- package/src/html/selector.js +1 -1
package/dist/index.cjs
CHANGED
@@ -756,7 +756,8 @@ var ListItem = function ListItem(_ref) {
|
|
756
756
|
if (onSelect) onSelect(id);
|
757
757
|
}
|
758
758
|
|
759
|
-
var
|
759
|
+
var isSelected = Array.isArray(selected) ? selected.includes(id) : selected === id;
|
760
|
+
var style = isSelected ? "selected" : "";
|
760
761
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
761
762
|
className: "" + style,
|
762
763
|
onClick: select
|
@@ -2479,6 +2480,71 @@ var ColorField = function ColorField(props) {
|
|
2479
2480
|
}));
|
2480
2481
|
};
|
2481
2482
|
|
2483
|
+
/**
|
2484
|
+
* Multi Selector
|
2485
|
+
*/
|
2486
|
+
|
2487
|
+
var MultiSelector = function MultiSelector(props) {
|
2488
|
+
var _props$options = props.options,
|
2489
|
+
options = _props$options === void 0 ? [] : _props$options,
|
2490
|
+
className = props.className;
|
2491
|
+
|
2492
|
+
var _useState = React.useState([]),
|
2493
|
+
selections = _useState[0],
|
2494
|
+
setSelections = _useState[1];
|
2495
|
+
|
2496
|
+
React.useEffect(function () {
|
2497
|
+
var initialSelections = options.filter(function (option) {
|
2498
|
+
return option.selected === true;
|
2499
|
+
}).map(function (option) {
|
2500
|
+
return option.value;
|
2501
|
+
});
|
2502
|
+
setSelections(initialSelections);
|
2503
|
+
}, []);
|
2504
|
+
|
2505
|
+
function toggleSelection(value) {
|
2506
|
+
var onChange = props.onChange;
|
2507
|
+
var next = selections.includes(value) ? selections.filter(function (item) {
|
2508
|
+
return item != value;
|
2509
|
+
}) : selections.concat([value]);
|
2510
|
+
setSelections(next);
|
2511
|
+
if (onChange) onChange(next);
|
2512
|
+
}
|
2513
|
+
|
2514
|
+
var items = options.map(function (option) {
|
2515
|
+
return _extends({}, option, {
|
2516
|
+
selected: selections.includes(option.value),
|
2517
|
+
onToggle: toggleSelection
|
2518
|
+
});
|
2519
|
+
});
|
2520
|
+
return /*#__PURE__*/React__default["default"].createElement("ul", {
|
2521
|
+
className: "multiselector " + className
|
2522
|
+
}, items.map(function (option) {
|
2523
|
+
return /*#__PURE__*/React__default["default"].createElement(ToggleButton, option);
|
2524
|
+
}));
|
2525
|
+
};
|
2526
|
+
/**
|
2527
|
+
* Toggle Button
|
2528
|
+
*/
|
2529
|
+
|
2530
|
+
var ToggleButton = function ToggleButton(props) {
|
2531
|
+
var label = props.label,
|
2532
|
+
value = props.value,
|
2533
|
+
_props$selected = props.selected,
|
2534
|
+
selected = _props$selected === void 0 ? false : _props$selected,
|
2535
|
+
onToggle = props.onToggle;
|
2536
|
+
|
2537
|
+
function toggle() {
|
2538
|
+
if (onToggle) onToggle(value);
|
2539
|
+
}
|
2540
|
+
|
2541
|
+
var selectedStyle = selected ? 'selected' : '';
|
2542
|
+
return /*#__PURE__*/React__default["default"].createElement("li", {
|
2543
|
+
className: selectedStyle + " " + value,
|
2544
|
+
onClick: toggle
|
2545
|
+
}, label);
|
2546
|
+
};
|
2547
|
+
|
2482
2548
|
/**
|
2483
2549
|
* Login Box
|
2484
2550
|
*/
|
@@ -10898,6 +10964,7 @@ exports.Menu = Menu;
|
|
10898
10964
|
exports.MenuIcon = MenuIcon;
|
10899
10965
|
exports.MenuItem = MenuItem;
|
10900
10966
|
exports.MenuSeparator = MenuSeparator;
|
10967
|
+
exports.MultiSelector = MultiSelector;
|
10901
10968
|
exports.Page = Page;
|
10902
10969
|
exports.PageContext = PageContext;
|
10903
10970
|
exports.PageProvider = PageProvider;
|
@@ -10930,6 +10997,7 @@ exports.Text = Text;
|
|
10930
10997
|
exports.TextArea = TextArea;
|
10931
10998
|
exports.TextField = TextField;
|
10932
10999
|
exports.Thumbnail = Thumbnail;
|
11000
|
+
exports.ToggleButton = ToggleButton;
|
10933
11001
|
exports.TokenField = TokenField;
|
10934
11002
|
exports.Tooltip = Tooltip;
|
10935
11003
|
exports.Tree = Tree;
|