ywana-core8 0.0.888 → 0.0.890

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.
@@ -4297,16 +4297,67 @@ var UploadDialog = function UploadDialog(_ref) {
4297
4297
  }), children);
4298
4298
  };
4299
4299
 
4300
+ /**
4301
+ * File Explorer
4302
+ */
4303
+ var FileExplorer = function FileExplorer(props) {
4304
+ var _props$files = props.files,
4305
+ files = _props$files === void 0 ? [] : _props$files,
4306
+ _props$folders = props.folders,
4307
+ folders = _props$folders === void 0 ? [] : _props$folders;
4308
+ var _useState = useState(),
4309
+ selectedFolder = _useState[0],
4310
+ setSelectedFolder = _useState[1];
4311
+ var _useState2 = useState(),
4312
+ selectedFile = _useState2[0],
4313
+ setSelectedFile = _useState2[1];
4314
+ var _useState3 = useState(),
4315
+ search = _useState3[0],
4316
+ setSearch = _useState3[1];
4317
+ function selectFolder(id) {
4318
+ setSelectedFolder(id);
4319
+ }
4320
+ function selectFile(id) {
4321
+ setSelectedFile(id);
4322
+ }
4323
+ function searchChanged(value) {
4324
+ setSearch(value);
4325
+ }
4326
+ var filteredFiles = search ? files.filter(function (file) {
4327
+ return file.title.toLowerCase().includes(search.toLowerCase());
4328
+ }) : files;
4329
+ var selectedFiles = filteredFiles.filter(function (file) {
4330
+ return file.folder === selectedFolder;
4331
+ });
4332
+ return /*#__PURE__*/React.createElement("div", {
4333
+ style: {
4334
+ padding: "1rem",
4335
+ flex: "1",
4336
+ height: "100%"
4337
+ }
4338
+ }, /*#__PURE__*/React.createElement(FileExplorerView, {
4339
+ title: "File Explorer Test",
4340
+ folders: folders,
4341
+ selectedFolder: selectedFolder,
4342
+ onSelectFolder: selectFolder,
4343
+ files: selectedFiles,
4344
+ selectedFile: selectedFile,
4345
+ onSelectFile: selectFile,
4346
+ search: search,
4347
+ onSearch: searchChanged
4348
+ }));
4349
+ };
4350
+
4300
4351
  /**
4301
4352
  * File Explorer View
4302
4353
  */
4303
4354
  var FileExplorerView = function FileExplorerView(props) {
4304
- var _props$folders = props.folders,
4305
- folders = _props$folders === void 0 ? [] : _props$folders,
4355
+ var _props$folders2 = props.folders,
4356
+ folders = _props$folders2 === void 0 ? [] : _props$folders2,
4306
4357
  selectedFolder = props.selectedFolder,
4307
4358
  onSelectFolder = props.onSelectFolder,
4308
- _props$files = props.files,
4309
- files = _props$files === void 0 ? [] : _props$files,
4359
+ _props$files2 = props.files,
4360
+ files = _props$files2 === void 0 ? [] : _props$files2,
4310
4361
  selectedFile = props.selectedFile,
4311
4362
  onSelectFile = props.onSelectFile,
4312
4363
  search = props.search,
@@ -4357,8 +4408,8 @@ var FileExplorerView = function FileExplorerView(props) {
4357
4408
  }) : null));
4358
4409
  };
4359
4410
  var FoldersTreeView = function FoldersTreeView(props) {
4360
- var _props$folders2 = props.folders,
4361
- folders = _props$folders2 === void 0 ? [] : _props$folders2,
4411
+ var _props$folders3 = props.folders,
4412
+ folders = _props$folders3 === void 0 ? [] : _props$folders3,
4362
4413
  selected = props.selected,
4363
4414
  _onSelect = props.onSelect;
4364
4415
  function isSelected(id) {
@@ -4394,8 +4445,8 @@ var FilesSearchBox = function FilesSearchBox(props) {
4394
4445
  * File Icons View
4395
4446
  */
4396
4447
  var FilesGridView = function FilesGridView(props) {
4397
- var _props$files2 = props.files,
4398
- files = _props$files2 === void 0 ? [] : _props$files2,
4448
+ var _props$files3 = props.files,
4449
+ files = _props$files3 === void 0 ? [] : _props$files3,
4399
4450
  selected = props.selected,
4400
4451
  onSelect = props.onSelect;
4401
4452
  function isSelected(id) {
@@ -4443,8 +4494,8 @@ var FileGridItem = function FileGridItem(props) {
4443
4494
  }, subtitle)));
4444
4495
  };
4445
4496
  var FilesTableView = function FilesTableView(props) {
4446
- var _props$files3 = props.files,
4447
- files = _props$files3 === void 0 ? [] : _props$files3;
4497
+ var _props$files4 = props.files,
4498
+ files = _props$files4 === void 0 ? [] : _props$files4;
4448
4499
  var table = {
4449
4500
  columns: [{
4450
4501
  id: "icon",
@@ -11042,5 +11093,5 @@ var isFunction = function isFunction(value) {
11042
11093
  return value && (Object.prototype.toString.call(value) === "[object Function]" || "function" === typeof value || value instanceof Function);
11043
11094
  };
11044
11095
 
11045
- export { Accordion, Avatar, Button, Calendar, CheckBox, Chip, Chips, CircularProgress, CollectionAPI$1 as CollectionAPI, CollectionAPI as CollectionAPI2, CollectionContext$1 as CollectionContext, CollectionContext as CollectionContext2, CollectionEditor$2 as CollectionEditor, CollectionFilters$1 as CollectionFilters, CollectionPage$1 as CollectionPage, CollectionPage as CollectionPage2, CollectionTree, ColorField, Content, ContentEditor, ContentForm, ContentViewer, CreateContentDialog, DataTable, DateRange, Dialog, DropDown, DynamicForm, EditContentDialog, EmptyMessage, FORMATS$1 as FORMATS, FieldEditor, FileExplorerView, FilesGridView, FilesSearchBox, FoldersTreeView, Form, HTTPClient, Header, Icon, ImageViewer, Kanban, KanbanCard, KanbanColumn, LinearProgress, List, ListEditor, LoginBox, Menu, MenuIcon, MenuItem, MenuSeparator, MultiSelector, Page, PageContext, PageProvider, PasswordEditor, PasswordField, Planner, Property, RadioButton, ResetPasswordBox, Section, Session, Site, SiteContext, SiteProvider, Stack, Switch, Switch2, TASK_STATES, TEXTFORMATS, TYPES$1 as TYPES, Tab, TabbedContentEditor, TabbedTablePage, TabbedView, TableEditor$2 as TableEditor, TablePage, TablePage2, Tabs, TaskContext, TaskContextProvider, TaskMonitor, TaskProgress, Text, TextArea, TextField, Thumbnail, ToggleButton, TokenField, Tooltip, Tree, TreeItem, TreeNode, TreededContentEditor, UploadArea, UploadDialog, UploadFile$1 as UploadFile, UploadForm, UploadIcon, Uploader, View, Viewer, WaitScreen, Wizard, WizardContext, isEmpty, isFunction };
11096
+ export { Accordion, Avatar, Button, Calendar, CheckBox, Chip, Chips, CircularProgress, CollectionAPI$1 as CollectionAPI, CollectionAPI as CollectionAPI2, CollectionContext$1 as CollectionContext, CollectionContext as CollectionContext2, CollectionEditor$2 as CollectionEditor, CollectionFilters$1 as CollectionFilters, CollectionPage$1 as CollectionPage, CollectionPage as CollectionPage2, CollectionTree, ColorField, Content, ContentEditor, ContentForm, ContentViewer, CreateContentDialog, DataTable, DateRange, Dialog, DropDown, DynamicForm, EditContentDialog, EmptyMessage, FORMATS$1 as FORMATS, FieldEditor, FileExplorer, FileExplorerView, FileGridItem, FilesGridView, FilesSearchBox, FilesTableView, FoldersTreeView, Form, HTTPClient, Header, Icon, ImageViewer, Kanban, KanbanCard, KanbanColumn, LinearProgress, List, ListEditor, LoginBox, Menu, MenuIcon, MenuItem, MenuSeparator, MultiSelector, Page, PageContext, PageProvider, PasswordEditor, PasswordField, Planner, Property, RadioButton, ResetPasswordBox, Section, Session, Site, SiteContext, SiteProvider, Stack, Switch, Switch2, TASK_STATES, TEXTFORMATS, TYPES$1 as TYPES, Tab, TabbedContentEditor, TabbedTablePage, TabbedView, TableEditor$2 as TableEditor, TablePage, TablePage2, Tabs, TaskContext, TaskContextProvider, TaskMonitor, TaskProgress, Text, TextArea, TextField, Thumbnail, ToggleButton, TokenField, Tooltip, Tree, TreeItem, TreeNode, TreededContentEditor, UploadArea, UploadDialog, UploadFile$1 as UploadFile, UploadForm, UploadIcon, Uploader, View, Viewer, WaitScreen, Wizard, WizardContext, isEmpty, isFunction };
11046
11097
  //# sourceMappingURL=index.modern.js.map