ywana-core8 0.0.890 → 0.0.892

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.umd.js CHANGED
@@ -4305,8 +4305,12 @@
4305
4305
  var FileExplorer = function FileExplorer(props) {
4306
4306
  var _props$files = props.files,
4307
4307
  files = _props$files === void 0 ? [] : _props$files,
4308
+ onSelectFile = props.onSelectFile,
4308
4309
  _props$folders = props.folders,
4309
- folders = _props$folders === void 0 ? [] : _props$folders;
4310
+ folders = _props$folders === void 0 ? [] : _props$folders,
4311
+ onSelectFolder = props.onSelectFolder,
4312
+ _props$defaultView = props.defaultView,
4313
+ defaultView = _props$defaultView === void 0 ? "grid" : _props$defaultView;
4310
4314
  var _useState = React.useState(),
4311
4315
  selectedFolder = _useState[0],
4312
4316
  setSelectedFolder = _useState[1];
@@ -4316,6 +4320,18 @@
4316
4320
  var _useState3 = React.useState(),
4317
4321
  search = _useState3[0],
4318
4322
  setSearch = _useState3[1];
4323
+ React.useEffect(function () {
4324
+ if (files.length > 0) {
4325
+ setSelectedFolder(files[0].folder);
4326
+ setSelectedFile(files[0].id);
4327
+ }
4328
+ }, [files]);
4329
+ React.useEffect(function () {
4330
+ if (onSelectFile) onSelectFile(selectedFile);
4331
+ }, [selectedFile]);
4332
+ React.useEffect(function () {
4333
+ if (onSelectFolder) onSelectFolder(selectedFolder);
4334
+ }, [selectedFolder]);
4319
4335
  function selectFolder(id) {
4320
4336
  setSelectedFolder(id);
4321
4337
  }
@@ -4331,14 +4347,7 @@
4331
4347
  var selectedFiles = filteredFiles.filter(function (file) {
4332
4348
  return file.folder === selectedFolder;
4333
4349
  });
4334
- return /*#__PURE__*/React__default["default"].createElement("div", {
4335
- style: {
4336
- padding: "1rem",
4337
- flex: "1",
4338
- height: "100%"
4339
- }
4340
- }, /*#__PURE__*/React__default["default"].createElement(FileExplorerView, {
4341
- title: "File Explorer Test",
4350
+ return /*#__PURE__*/React__default["default"].createElement(FileExplorerView, {
4342
4351
  folders: folders,
4343
4352
  selectedFolder: selectedFolder,
4344
4353
  onSelectFolder: selectFolder,
@@ -4346,8 +4355,9 @@
4346
4355
  selectedFile: selectedFile,
4347
4356
  onSelectFile: selectFile,
4348
4357
  search: search,
4349
- onSearch: searchChanged
4350
- }));
4358
+ onSearch: searchChanged,
4359
+ selectedView: defaultView
4360
+ });
4351
4361
  };
4352
4362
 
4353
4363
  /**
@@ -4363,8 +4373,10 @@
4363
4373
  selectedFile = props.selectedFile,
4364
4374
  onSelectFile = props.onSelectFile,
4365
4375
  search = props.search,
4366
- onSearch = props.onSearch;
4367
- var _useState4 = React.useState('list'),
4376
+ onSearch = props.onSearch,
4377
+ _props$selectedView = props.selectedView,
4378
+ selectedView = _props$selectedView === void 0 ? "grid" : _props$selectedView;
4379
+ var _useState4 = React.useState(selectedView),
4368
4380
  view = _useState4[0],
4369
4381
  setView = _useState4[1];
4370
4382
  var folder = folders.find(function (folder) {
@@ -4418,15 +4430,26 @@
4418
4430
  return selected === id;
4419
4431
  }
4420
4432
  return /*#__PURE__*/React__default["default"].createElement(Tree, null, folders.map(function (folder) {
4421
- return /*#__PURE__*/React__default["default"].createElement(TreeItem, {
4422
- key: folder.id,
4423
- icon: folder.icon,
4424
- label: folder.title,
4425
- onSelect: function onSelect() {
4426
- return _onSelect(folder.id);
4427
- },
4428
- selected: isSelected(folder.id)
4429
- });
4433
+ if (folder.children) {
4434
+ return /*#__PURE__*/React__default["default"].createElement(TreeNode, {
4435
+ key: folder.id,
4436
+ label: folder.title
4437
+ }, /*#__PURE__*/React__default["default"].createElement(FoldersTreeView, {
4438
+ folders: folder.children,
4439
+ selected: selected,
4440
+ onSelect: _onSelect
4441
+ }));
4442
+ } else {
4443
+ return /*#__PURE__*/React__default["default"].createElement(TreeItem, {
4444
+ key: folder.id,
4445
+ icon: folder.icon,
4446
+ label: folder.title,
4447
+ onSelect: function onSelect() {
4448
+ return _onSelect(folder.id);
4449
+ },
4450
+ selected: isSelected(folder.id)
4451
+ });
4452
+ }
4430
4453
  }));
4431
4454
  };
4432
4455
  var FilesSearchBox = function FilesSearchBox(props) {