ywana-core8 0.0.887 → 0.0.888
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 +129 -35
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +61 -42
- package/dist/index.css.map +1 -1
- package/dist/index.modern.js +126 -34
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +129 -35
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/site/site.css +8 -0
- package/src/site/site.js +1 -1
- package/src/widgets/explorer/Explorer.css +53 -42
- package/src/widgets/explorer/Explorer.js +135 -32
- package/src/widgets/explorer/Explorer.test.js +80 -13
package/dist/index.modern.js
CHANGED
@@ -4034,7 +4034,7 @@ var SiteMenu = function SiteMenu(_ref6) {
|
|
4034
4034
|
}, /*#__PURE__*/React.createElement(Tooltip, {
|
4035
4035
|
text: title,
|
4036
4036
|
top: ".5rem",
|
4037
|
-
left: "
|
4037
|
+
left: "4.5rem"
|
4038
4038
|
}, /*#__PURE__*/React.createElement(Icon, {
|
4039
4039
|
key: id,
|
4040
4040
|
icon: icon,
|
@@ -4298,77 +4298,169 @@ var UploadDialog = function UploadDialog(_ref) {
|
|
4298
4298
|
};
|
4299
4299
|
|
4300
4300
|
/**
|
4301
|
-
* File Explorer
|
4301
|
+
* File Explorer View
|
4302
4302
|
*/
|
4303
|
-
var
|
4304
|
-
var
|
4303
|
+
var FileExplorerView = function FileExplorerView(props) {
|
4304
|
+
var _props$folders = props.folders,
|
4305
|
+
folders = _props$folders === void 0 ? [] : _props$folders,
|
4306
|
+
selectedFolder = props.selectedFolder,
|
4307
|
+
onSelectFolder = props.onSelectFolder,
|
4305
4308
|
_props$files = props.files,
|
4306
|
-
files = _props$files === void 0 ? [] : _props$files
|
4309
|
+
files = _props$files === void 0 ? [] : _props$files,
|
4310
|
+
selectedFile = props.selectedFile,
|
4311
|
+
onSelectFile = props.onSelectFile,
|
4312
|
+
search = props.search,
|
4313
|
+
onSearch = props.onSearch;
|
4314
|
+
var _useState4 = useState('list'),
|
4315
|
+
view = _useState4[0],
|
4316
|
+
setView = _useState4[1];
|
4317
|
+
var folder = folders.find(function (folder) {
|
4318
|
+
return folder.id === selectedFolder;
|
4319
|
+
});
|
4320
|
+
var folderTitle = folder ? folder.title : '';
|
4321
|
+
function switchView() {
|
4322
|
+
setView(view === 'grid' ? 'list' : 'grid');
|
4323
|
+
}
|
4307
4324
|
return /*#__PURE__*/React.createElement("div", {
|
4308
4325
|
className: "file-explorer"
|
4309
|
-
}, /*#__PURE__*/React.createElement("
|
4310
|
-
|
4311
|
-
}
|
4312
|
-
|
4313
|
-
})), /*#__PURE__*/React.createElement("
|
4326
|
+
}, /*#__PURE__*/React.createElement("nav", null, /*#__PURE__*/React.createElement("header", {
|
4327
|
+
className: "folder-header"
|
4328
|
+
}, /*#__PURE__*/React.createElement("div", {
|
4329
|
+
className: "folder-title"
|
4330
|
+
}, folderTitle)), /*#__PURE__*/React.createElement("div", {
|
4331
|
+
className: "folder-actions"
|
4332
|
+
}, /*#__PURE__*/React.createElement(Icon, {
|
4333
|
+
icon: "list",
|
4334
|
+
clickable: true,
|
4335
|
+
action: switchView,
|
4336
|
+
checked: view === "list"
|
4337
|
+
}), /*#__PURE__*/React.createElement(Icon, {
|
4338
|
+
icon: "grid_view",
|
4339
|
+
clickable: true,
|
4340
|
+
action: switchView,
|
4341
|
+
checked: view === "grid"
|
4342
|
+
})), /*#__PURE__*/React.createElement(FilesSearchBox, {
|
4343
|
+
search: search,
|
4344
|
+
onSearch: onSearch
|
4345
|
+
})), /*#__PURE__*/React.createElement("menu", null, /*#__PURE__*/React.createElement(FoldersTreeView, {
|
4346
|
+
folders: folders,
|
4347
|
+
selected: selectedFolder,
|
4348
|
+
onSelect: onSelectFolder
|
4349
|
+
})), /*#__PURE__*/React.createElement("main", null, view === 'grid' ? /*#__PURE__*/React.createElement(FilesGridView, {
|
4350
|
+
files: files,
|
4351
|
+
selected: selectedFile,
|
4352
|
+
onSelect: onSelectFile
|
4353
|
+
}) : null, view === 'list' ? /*#__PURE__*/React.createElement(FilesTableView, {
|
4354
|
+
files: files,
|
4355
|
+
selected: selectedFile,
|
4356
|
+
onSelect: onSelectFile
|
4357
|
+
}) : null));
|
4358
|
+
};
|
4359
|
+
var FoldersTreeView = function FoldersTreeView(props) {
|
4360
|
+
var _props$folders2 = props.folders,
|
4361
|
+
folders = _props$folders2 === void 0 ? [] : _props$folders2,
|
4362
|
+
selected = props.selected,
|
4363
|
+
_onSelect = props.onSelect;
|
4364
|
+
function isSelected(id) {
|
4365
|
+
return selected === id;
|
4366
|
+
}
|
4367
|
+
return /*#__PURE__*/React.createElement(Tree, null, folders.map(function (folder) {
|
4368
|
+
return /*#__PURE__*/React.createElement(TreeItem, {
|
4369
|
+
key: folder.id,
|
4370
|
+
icon: folder.icon,
|
4371
|
+
label: folder.title,
|
4372
|
+
onSelect: function onSelect() {
|
4373
|
+
return _onSelect(folder.id);
|
4374
|
+
},
|
4375
|
+
selected: isSelected(folder.id)
|
4376
|
+
});
|
4377
|
+
}));
|
4378
|
+
};
|
4379
|
+
var FilesSearchBox = function FilesSearchBox(props) {
|
4380
|
+
var onSearch = props.onSearch;
|
4381
|
+
function searchChanged(id, value) {
|
4382
|
+
onSearch(value);
|
4383
|
+
}
|
4384
|
+
return /*#__PURE__*/React.createElement("div", {
|
4385
|
+
className: "file-searchbox"
|
4386
|
+
}, /*#__PURE__*/React.createElement(TextField, {
|
4387
|
+
placeholder: "Search...",
|
4388
|
+
onChange: searchChanged,
|
4389
|
+
outlined: true
|
4390
|
+
}));
|
4314
4391
|
};
|
4315
4392
|
|
4316
4393
|
/**
|
4317
4394
|
* File Icons View
|
4318
4395
|
*/
|
4319
|
-
var
|
4396
|
+
var FilesGridView = function FilesGridView(props) {
|
4320
4397
|
var _props$files2 = props.files,
|
4321
4398
|
files = _props$files2 === void 0 ? [] : _props$files2,
|
4399
|
+
selected = props.selected,
|
4322
4400
|
onSelect = props.onSelect;
|
4323
|
-
var _useState = useState(),
|
4324
|
-
selected = _useState[0],
|
4325
|
-
setSelected = _useState[1];
|
4326
|
-
function select(id) {
|
4327
|
-
setSelected(id);
|
4328
|
-
if (onSelect) onSelect(id);
|
4329
|
-
}
|
4330
4401
|
function isSelected(id) {
|
4331
4402
|
return selected === id;
|
4332
4403
|
}
|
4333
4404
|
return /*#__PURE__*/React.createElement("div", {
|
4334
|
-
className: "
|
4405
|
+
className: "files-grid"
|
4335
4406
|
}, files.map(function (file) {
|
4336
|
-
return /*#__PURE__*/React.createElement(
|
4407
|
+
return /*#__PURE__*/React.createElement(FileGridItem, {
|
4408
|
+
key: file.id,
|
4337
4409
|
file: file,
|
4338
|
-
onSelect:
|
4410
|
+
onSelect: onSelect,
|
4339
4411
|
selected: isSelected(file.id)
|
4340
4412
|
});
|
4341
4413
|
}));
|
4342
4414
|
};
|
4343
4415
|
|
4344
4416
|
/**
|
4345
|
-
* File
|
4417
|
+
* File Grid Item
|
4346
4418
|
*/
|
4347
|
-
var
|
4419
|
+
var FileGridItem = function FileGridItem(props) {
|
4348
4420
|
var _props$file = props.file,
|
4349
4421
|
file = _props$file === void 0 ? {} : _props$file,
|
4350
4422
|
_props$selected = props.selected,
|
4351
4423
|
selected = _props$selected === void 0 ? false : _props$selected,
|
4352
4424
|
onSelect = props.onSelect;
|
4353
4425
|
var id = file.id,
|
4354
|
-
|
4355
|
-
|
4426
|
+
title = file.title,
|
4427
|
+
subtitle = file.subtitle,
|
4356
4428
|
_file$src = file.src,
|
4357
|
-
src = _file$src === void 0 ? "https://
|
4358
|
-
footer = file.footer;
|
4429
|
+
src = _file$src === void 0 ? "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQkAPtY9GS4QgwAjRUSvLaa6TP4fSlQkVDqEg&usqp=CAU" : _file$src;
|
4359
4430
|
function select() {
|
4360
4431
|
if (onSelect && !selected) onSelect(id);
|
4361
4432
|
}
|
4362
|
-
var style = selected ? 'file-
|
4433
|
+
var style = selected ? 'file-item--selected' : '';
|
4363
4434
|
return /*#__PURE__*/React.createElement("div", {
|
4364
|
-
className: "file-
|
4435
|
+
className: "file-item " + style,
|
4365
4436
|
onClick: select
|
4366
4437
|
}, /*#__PURE__*/React.createElement("picture", null, /*#__PURE__*/React.createElement("img", {
|
4367
4438
|
src: src
|
4368
|
-
})), /*#__PURE__*/React.createElement("main", null,
|
4369
|
-
|
4370
|
-
|
4371
|
-
|
4439
|
+
})), /*#__PURE__*/React.createElement("main", null, /*#__PURE__*/React.createElement("div", {
|
4440
|
+
className: "file-item-title"
|
4441
|
+
}, title), /*#__PURE__*/React.createElement("div", {
|
4442
|
+
className: "file-item-subtitle"
|
4443
|
+
}, subtitle)));
|
4444
|
+
};
|
4445
|
+
var FilesTableView = function FilesTableView(props) {
|
4446
|
+
var _props$files3 = props.files,
|
4447
|
+
files = _props$files3 === void 0 ? [] : _props$files3;
|
4448
|
+
var table = {
|
4449
|
+
columns: [{
|
4450
|
+
id: "icon",
|
4451
|
+
type: "ICON"
|
4452
|
+
}, {
|
4453
|
+
id: "title",
|
4454
|
+
label: "Title"
|
4455
|
+
}, {
|
4456
|
+
id: "subtitle",
|
4457
|
+
label: "Subtitle"
|
4458
|
+
}],
|
4459
|
+
rows: files
|
4460
|
+
};
|
4461
|
+
return /*#__PURE__*/React.createElement("div", {
|
4462
|
+
className: "files-table"
|
4463
|
+
}, /*#__PURE__*/React.createElement(DataTable, table));
|
4372
4464
|
};
|
4373
4465
|
|
4374
4466
|
/**
|
@@ -10950,5 +11042,5 @@ var isFunction = function isFunction(value) {
|
|
10950
11042
|
return value && (Object.prototype.toString.call(value) === "[object Function]" || "function" === typeof value || value instanceof Function);
|
10951
11043
|
};
|
10952
11044
|
|
10953
|
-
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,
|
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 };
|
10954
11046
|
//# sourceMappingURL=index.modern.js.map
|