ywana-core8 0.0.354 → 0.0.355

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 CHANGED
@@ -639,7 +639,9 @@ var MenuIcon = function MenuIcon(props) {
639
639
  var _props$icon = props.icon,
640
640
  icon = _props$icon === void 0 ? "more_vert" : _props$icon,
641
641
  children = props.children,
642
- align = props.align;
642
+ align = props.align,
643
+ _props$size = props.size,
644
+ size = _props$size === void 0 ? "normal" : _props$size;
643
645
 
644
646
  var _useState = React.useState(false),
645
647
  open = _useState[0],
@@ -655,6 +657,7 @@ var MenuIcon = function MenuIcon(props) {
655
657
  className: "menu-icon"
656
658
  }, /*#__PURE__*/React__default["default"].createElement(Icon, {
657
659
  icon: icon,
660
+ size: size,
658
661
  clickable: true,
659
662
  action: toggle
660
663
  }), open ? /*#__PURE__*/React__default["default"].createElement("menu", {
@@ -3464,6 +3467,94 @@ var UploadDialog = function UploadDialog(_ref) {
3464
3467
  }));
3465
3468
  };
3466
3469
 
3470
+ /**
3471
+ * File Explorer
3472
+ */
3473
+
3474
+ var FileExplorer = function FileExplorer(props) {
3475
+ var _props$files = props.files,
3476
+ files = _props$files === void 0 ? [] : _props$files;
3477
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3478
+ className: "file-explorer"
3479
+ }, /*#__PURE__*/React__default["default"].createElement("header", null, "header"), /*#__PURE__*/React__default["default"].createElement("nav", null, "nav"), /*#__PURE__*/React__default["default"].createElement("menu", null, "menu"), /*#__PURE__*/React__default["default"].createElement("main", null, /*#__PURE__*/React__default["default"].createElement(FileIconsView, {
3480
+ files: files
3481
+ })), /*#__PURE__*/React__default["default"].createElement("aside", null), /*#__PURE__*/React__default["default"].createElement("footer", null, "footer"));
3482
+ };
3483
+ /**
3484
+ * File Icons View
3485
+ */
3486
+
3487
+ var FileIconsView = function FileIconsView(props) {
3488
+ var _props$files2 = props.files,
3489
+ files = _props$files2 === void 0 ? [] : _props$files2,
3490
+ onSelect = props.onSelect;
3491
+
3492
+ var _useState = React.useState(),
3493
+ selected = _useState[0],
3494
+ setSelected = _useState[1];
3495
+
3496
+ function select(id) {
3497
+ setSelected(id);
3498
+ if (onSelect) onSelect(id);
3499
+ }
3500
+
3501
+ function isSelected(id) {
3502
+ return selected === id;
3503
+ }
3504
+
3505
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3506
+ className: "file-view file-view--icons"
3507
+ }, files.map(function (file) {
3508
+ return /*#__PURE__*/React__default["default"].createElement(FileIcon, {
3509
+ file: file,
3510
+ onSelect: select,
3511
+ selected: isSelected(file.id)
3512
+ });
3513
+ }));
3514
+ };
3515
+ /**
3516
+ * File Icon
3517
+ */
3518
+
3519
+ var FileIcon = function FileIcon(props) {
3520
+ var _props$file = props.file,
3521
+ file = _props$file === void 0 ? {} : _props$file,
3522
+ _props$selected = props.selected,
3523
+ selected = _props$selected === void 0 ? false : _props$selected,
3524
+ onSelect = props.onSelect;
3525
+ var id = file.id,
3526
+ icon = file.icon,
3527
+ label = file.label,
3528
+ _file$actions = file.actions,
3529
+ actions = _file$actions === void 0 ? [] : _file$actions,
3530
+ _file$src = file.src,
3531
+ src = _file$src === void 0 ? "https://findicons.com/files/icons/2813/flat_jewels/256/file.png" : _file$src,
3532
+ footer = file.footer;
3533
+
3534
+ function select() {
3535
+ if (onSelect && !selected) onSelect(id);
3536
+ }
3537
+
3538
+ var style = selected ? 'file-icon--selected' : '';
3539
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3540
+ className: "file-icon " + style,
3541
+ onClick: select
3542
+ }, /*#__PURE__*/React__default["default"].createElement("header", null, icon ? /*#__PURE__*/React__default["default"].createElement(Icon, {
3543
+ size: "small",
3544
+ icon: icon
3545
+ }) : null, /*#__PURE__*/React__default["default"].createElement(MenuIcon, {
3546
+ size: "small"
3547
+ }, actions.map(function (action) {
3548
+ return /*#__PURE__*/React__default["default"].createElement(MenuItem, {
3549
+ icon: action.icon,
3550
+ label: action.label,
3551
+ onSelect: action.execute
3552
+ });
3553
+ }))), /*#__PURE__*/React__default["default"].createElement("picture", null, /*#__PURE__*/React__default["default"].createElement("img", {
3554
+ src: src
3555
+ })), /*#__PURE__*/React__default["default"].createElement("main", null, /*#__PURE__*/React__default["default"].createElement("label", null, label)), footer ? /*#__PURE__*/React__default["default"].createElement("footer", null, footer) : null);
3556
+ };
3557
+
3467
3558
  /**
3468
3559
  * Content Form
3469
3560
  */
@@ -6096,6 +6187,8 @@ exports.DropDown = DropDown;
6096
6187
  exports.EditContentDialog = EditContentDialog;
6097
6188
  exports.FORMATS = FORMATS;
6098
6189
  exports.FieldEditor = FieldEditor;
6190
+ exports.FileExplorer = FileExplorer;
6191
+ exports.FileIconsView = FileIconsView;
6099
6192
  exports.Form = Form;
6100
6193
  exports.HTTPClient = HTTPClient;
6101
6194
  exports.Header = Header;