@gingkoo/pandora-explorer 0.0.1-alpha.99 → 0.0.1

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.
@@ -15,6 +15,8 @@ interface SelectBoxProps {
15
15
  isSelectBoxes: boolean;
16
16
  action?: 'stack' | 'rotate';
17
17
  checkType?: 'file' | 'folder';
18
+ startDrag: () => void;
19
+ endDrag: () => void;
18
20
  onChange: (v: any) => any;
19
21
  children: ReactNode;
20
22
  onMouseup: (v: any) => void;
@@ -2,8 +2,6 @@ import './index.less';
2
2
  import './components/tree/css/index.less';
3
3
  import { FC } from 'react';
4
4
  import { ExplorerProps } from './types';
5
- import '@gingkoo/pandora/lib/umd/index.min.css';
6
- import '@gingkoo/pandora-icons/fonts/css/all.min.css';
7
5
  export declare const Icons: (v: any, className: string, style?: any) => import("react/jsx-runtime").JSX.Element;
8
6
  declare const Explorer: FC<ExplorerProps>;
9
7
  export default Explorer;
package/lib/es/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @gingkoo/pandora-explorer v0.0.1-alpha.99
2
+ * @gingkoo/pandora-explorer v0.0.1
3
3
  */
4
4
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
5
  import cx$1 from 'classnames';
@@ -19,10 +19,7 @@ import CSSMotion, { Provider } from 'rc-motion';
19
19
  import toArray from 'rc-util/lib/Children/toArray';
20
20
  import omit from 'rc-util/lib/omit';
21
21
  import ReactDOM from 'react-dom';
22
- import { Pagination } from '@gingkoo/pandora';
23
- import { openFile } from '@gingkoo/pandora-viewer';
24
- import '@gingkoo/pandora/lib/umd/index.min.css';
25
- import '@gingkoo/pandora-icons/fonts/css/all.min.css';
22
+ import { Pagination, Modal2 } from '@gingkoo/pandora';
26
23
 
27
24
  function styleInject(css, ref) {
28
25
  if ( ref === void 0 ) ref = {};
@@ -2547,7 +2544,7 @@ function Slider(props) {
2547
2544
  var css_248z$8 = ".explorer-menu {\n height: 100%;\n}\n";
2548
2545
  styleInject(css_248z$8);
2549
2546
 
2550
- var css_248z$7 = ".explorer-tree {\n width: 100%;\n height: 100%;\n}\n.explorer-tree-switch {\n height: 31px;\n width: 24px;\n display: flex;\n justify-content: center;\n align-items: center;\n vertical-align: top !important;\n color: #aaa;\n border-radius: 2px;\n}\n.explorer-tree-switch:hover {\n color: #1890ff;\n background-color: rgba(0, 0, 0, 0.03);\n}\n.explorer-tree-switch.open {\n color: #1890ff;\n}\n.explorer-tree-switch.open > svg {\n transform: rotate(90deg);\n}\n.explorer-tree-switch.loading {\n background: transparent;\n animation: rotate 1s linear infinite;\n}\n.explorer-tree-icon {\n display: inline-block;\n width: 20px;\n height: 20px;\n margin: 6px 0px;\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n border-radius: 5px;\n font-style: normal;\n pointer-events: none;\n vertical-align: top;\n}\n.explorer-tree-node {\n display: flex;\n height: 100%;\n align-items: center;\n}\n.explorer-tree-node .node-title {\n flex: 1;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n.explorer-tree-node .node-menu {\n display: none;\n flex-shrink: 0;\n width: 30px;\n justify-content: center;\n align-items: center;\n}\n.explorer-tree-node .node-menu .node-menu-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 14px;\n height: 14px;\n border: 1px solid #ccc;\n border-radius: 2px;\n cursor: pointer;\n z-index: 50;\n background: #fff;\n color: #ccc;\n font-size: 7px;\n transition: 0.3s;\n}\n.explorer-tree-node .node-menu .node-menu-icon > svg {\n transform: rotate(90deg);\n}\n.explorer-tree-node .node-menu .node-menu-icon:hover {\n border: 1px solid #1890ff;\n color: #1890ff;\n}\n.explorer-tree-node .node-input {\n display: inline-block;\n width: 100%;\n height: 24px;\n outline: 0;\n border: 1px solid #eee;\n border-radius: 3px;\n transition: 0.3s;\n padding: 0 5px;\n}\n.explorer-tree-node .node-input:hover {\n border: 1px solid #1890ff;\n}\n.explorer-tree-node .node-input:focus {\n border: 1px solid #1890ff;\n}\n.explorer-tree-node:hover .node-menu {\n display: flex;\n}\n.explorer-tree-row {\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n}\n.explorer-tree-row .row-item {\n display: flex;\n padding: 0 10px;\n flex: 1 0 0;\n user-select: none;\n}\n.explorer-tree-row .row-item .row-item-content {\n flex: 1 0 0;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n display: flex;\n align-items: center;\n}\n.explorer-tree-row .row-item .row-item-content > input {\n height: 24px;\n outline: none;\n width: 100%;\n outline: 0;\n border: 0;\n}\n.explorer-tree-row .row-item .row-item-tool {\n display: flex;\n align-items: center;\n}\n.explorer-tree-row .row-item-check {\n display: flex;\n width: 19px;\n align-items: center;\n box-sizing: border-box;\n pointer-events: all;\n}\n.explorer-tree-row .row-item-check .btn-check {\n display: inline-block;\n height: 19px;\n width: 19px;\n flex-shrink: 0;\n z-index: 11;\n font-size: 20px;\n text-align: center;\n border-radius: 50%;\n background: rgba(0, 0, 0, 0.05);\n color: #fff;\n line-height: 0;\n opacity: 0;\n cursor: pointer;\n transition: opacity 0.3s;\n margin: 2px;\n}\n.explorer-tree-row .row-item-check .btn-check > svg {\n position: relative;\n width: 23px;\n height: 23px;\n left: -2px;\n top: -2px;\n}\n.explorer-tree-row .row-item-check.active .btn-check {\n opacity: 1;\n background: #3b8cff;\n}\n.explorer-tree-row.disable {\n opacity: 0.4;\n}\n.explorer-tree.table .tree-scroll-x {\n width: 100%;\n overflow: hidden;\n overflow-x: auto;\n}\n.explorer-tree.table .tree-scroll-x::-webkit-scrollbar {\n display: none;\n}\n.explorer-tree.table .tree-scroll {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: 10;\n overflow: auto;\n}\n.explorer-tree.table .rc-tree {\n height: calc(100% - 24px);\n}\n.explorer-tree.table .rc-tree-list-holder-inner {\n overflow: auto;\n}\n.explorer-tree.table .rc-tree-list {\n height: 100%;\n}\n.explorer-tree.table .rc-tree-checkbox {\n display: none !important;\n}\n.explorer-tree.table .rc-tree-treenode {\n border-radius: 2px;\n width: fit-content;\n opacity: 0.8;\n z-index: 100;\n pointer-events: all;\n margin-bottom: 2px;\n}\n.explorer-tree.table .rc-tree-treenode.rc-tree-treenode-selected {\n background: #4581a60d !important;\n}\n.explorer-tree.table .rc-tree-treenode.odd {\n background: #4664780d;\n}\n.explorer-tree.table .rc-tree-treenode.drags {\n background: #e5f3ff !important;\n border-color: #1677ff;\n}\n.explorer-tree.table .rc-tree-treenode.dragging {\n opacity: 0.4;\n height: auto !important;\n}\n.explorer-tree.table .rc-tree-list-holder-inner {\n padding: 8px 0 0 8px;\n}\n.explorer-tree.table .rc-tree-treenode-leaf-last:last-child {\n height: 200px;\n opacity: 0;\n width: 1px;\n}\n.explorer-tree.table .rc-tree-treenode-checkbox-checked {\n background: #cce8ff !important;\n border: 1px solid #99d1ff;\n}\n.explorer-tree .rc-tree-iconEle {\n height: 31px !important;\n vertical-align: top !important;\n width: auto !important;\n}\n.explorer-tree .rc-tree-treenode {\n position: relative;\n height: 31px;\n line-height: 31px;\n border: 1px solid transparent;\n user-select: none;\n display: flex;\n}\n.explorer-tree .rc-tree-treenode > .rc-tree-node-content-wrapper {\n height: 31px !important;\n display: flex !important;\n flex: 1;\n margin-left: calc(24px - 20px);\n overflow: hidden;\n}\n.explorer-tree .rc-tree-treenode > .rc-tree-node-selected {\n background-color: transparent;\n box-shadow: none;\n opacity: 1;\n}\n.explorer-tree .rc-tree-treenode.rc-tree-treenode-selected {\n background-color: #cce8ff !important;\n border: 1px solid #1890ff;\n opacity: 0.8;\n}\n.explorer-tree .rc-tree-treenode.rc-tree-treenode-selected .node-menu {\n display: flex;\n}\n.explorer-tree .rc-tree-treenode:hover {\n background: #e5f3ff !important;\n box-shadow: 0 0 0 1px transparent;\n}\n.explorer-tree .rc-tree-treenode.hover {\n background: #e5f3ff !important;\n}\n.explorer-tree .rc-tree-switcher {\n flex-shrink: 0;\n width: 20px !important;\n height: 31px !important;\n vertical-align: top !important;\n background-image: none !important;\n}\n.explorer-tree .rc-tree-title {\n display: inline-block;\n height: 31px;\n width: 100%;\n overflow: hidden;\n}\n.explorer-tree.showLine .rc-tree-indent {\n height: 31px;\n}\n.explorer-tree.showLine .rc-tree-indent > .rc-tree-indent-unit {\n position: relative;\n}\n.explorer-tree.showLine .rc-tree-indent > .rc-tree-indent-unit::after {\n display: inline-block;\n position: absolute;\n content: '';\n width: 1px;\n left: 10px;\n height: 31px;\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.showLine .rc-tree-indent-unit {\n width: 20px;\n height: 31px;\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:last-child {\n position: relative;\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:last-child::before {\n content: '';\n display: inline-block;\n position: absolute;\n width: 8px;\n top: calc(31px / 2);\n left: 10px;\n height: 1px;\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:last-child::after {\n display: inline-block;\n position: absolute;\n content: '';\n width: 1px;\n left: 10px;\n top: 0;\n height: calc(31px / 2);\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:first-child {\n position: relative;\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:first-child::before {\n display: none;\n content: '';\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:first-child::after {\n display: inline-block;\n position: absolute;\n content: '';\n width: 1px;\n left: 10px;\n height: 31px;\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.explorer-checks .rc-tree-treenode:hover .row-item-check .btn-check {\n opacity: 1;\n}\n.explorer-tree .rc-tree-list-scrollbar-thumb {\n background: #bbb !important;\n}\n.explorer-tree .rc-tree-list-scrollbar {\n width: 5px !important;\n height: 5px !important;\n}\n.explorer-tree .node-motion {\n transition: all 0.3s;\n overflow-y: hidden;\n}\n.explorer-tree .rc-tree-child-tree {\n display: block;\n}\n.explorer-table-header {\n display: flex;\n width: fit-content;\n min-width: 100%;\n height: 25px;\n line-height: 25px;\n color: #448;\n border-bottom: 1px solid #e3e3e3;\n box-shadow: 0 6px 10px rgba(0, 0, 0, 0.05);\n background: #fff;\n}\n.explorer-table-header .item {\n padding: 0 10px 0 0;\n flex: 1 0 0;\n margin-left: -10px;\n border-right: 1px solid #eee;\n user-select: none;\n min-width: 80px;\n}\n.explorer-table-header .item:first-child {\n padding-left: 20px;\n}\n.explorer-table-header .resize {\n position: relative;\n flex: 0 0 20px;\n width: 20px;\n z-index: 10;\n cursor: col-resize;\n left: -10px;\n transition: background 0.2s;\n}\n.explorer-table-header .resize::before {\n content: '';\n position: fixed;\n width: 1px;\n height: 2000px;\n z-index: 10;\n margin-left: 10px;\n visibility: hidden;\n opacity: 0;\n transition: all 0.2s;\n}\n.explorer-table-header .resize:hover {\n background: #1890ff30;\n}\n.explorer-table-header .resize.resize-focus {\n z-index: 9999;\n}\n.explorer-table-header .resize.resize-focus:before {\n opacity: 1;\n background: #1890ff;\n visibility: visible;\n}\n.explorer-table-header .resize:last-child {\n flex: 0 0 10px;\n width: 10px;\n}\n.explorer-table-header.item-resize {\n z-index: 10;\n}\n@keyframes rotate {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n";
2547
+ var css_248z$7 = ".explorer-tree {\n width: 100%;\n height: 100%;\n}\n.explorer-tree-switch {\n height: 31px;\n width: 24px;\n display: flex;\n justify-content: center;\n align-items: center;\n vertical-align: top !important;\n color: #aaa;\n border-radius: 2px;\n}\n.explorer-tree-switch:hover {\n color: #1890ff;\n background-color: rgba(0, 0, 0, 0.03);\n}\n.explorer-tree-switch.open {\n color: #1890ff;\n}\n.explorer-tree-switch.open > svg {\n transform: rotate(90deg);\n}\n.explorer-tree-switch.loading {\n background: transparent;\n animation: rotate 1s linear infinite;\n}\n.explorer-tree-icon {\n display: inline-block;\n width: 20px;\n height: 20px;\n margin: 6px 0px;\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n border-radius: 5px;\n font-style: normal;\n pointer-events: none;\n vertical-align: top;\n}\n.explorer-tree-node {\n display: flex;\n height: 100%;\n align-items: center;\n}\n.explorer-tree-node .node-title {\n flex: 1;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n.explorer-tree-node .node-menu {\n display: none;\n flex-shrink: 0;\n width: 30px;\n justify-content: center;\n align-items: center;\n}\n.explorer-tree-node .node-menu .node-menu-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 14px;\n height: 14px;\n border: 1px solid #ccc;\n border-radius: 2px;\n cursor: pointer;\n z-index: 50;\n background: #fff;\n color: #ccc;\n font-size: 7px;\n transition: 0.3s;\n}\n.explorer-tree-node .node-menu .node-menu-icon > svg {\n transform: rotate(90deg);\n}\n.explorer-tree-node .node-menu .node-menu-icon:hover {\n border: 1px solid #1890ff;\n color: #1890ff;\n}\n.explorer-tree-node .node-input {\n display: inline-block;\n width: 100%;\n height: 24px;\n outline: 0;\n border: 1px solid #eee;\n border-radius: 3px;\n transition: 0.3s;\n padding: 0 5px;\n}\n.explorer-tree-node .node-input:hover {\n border: 1px solid #1890ff;\n}\n.explorer-tree-node .node-input:focus {\n border: 1px solid #1890ff;\n}\n.explorer-tree-node:hover .node-menu {\n display: flex;\n}\n.explorer-tree-row {\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n}\n.explorer-tree-row .row-item {\n display: flex;\n padding: 0 10px;\n flex: 1 0 0;\n user-select: none;\n}\n.explorer-tree-row .row-item .row-item-content {\n flex: 1 0 0;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n display: flex;\n align-items: center;\n}\n.explorer-tree-row .row-item .row-item-content > input {\n height: 24px;\n outline: none;\n width: 100%;\n outline: 0;\n border: 0;\n}\n.explorer-tree-row .row-item .row-item-tool {\n display: flex;\n align-items: center;\n}\n.explorer-tree-row .row-item-check {\n display: flex;\n width: 19px;\n align-items: center;\n box-sizing: border-box;\n pointer-events: all;\n}\n.explorer-tree-row .row-item-check .btn-check {\n display: inline-block;\n height: 19px;\n width: 19px;\n flex-shrink: 0;\n z-index: 11;\n font-size: 20px;\n text-align: center;\n border-radius: 50%;\n background: rgba(0, 0, 0, 0.05);\n color: #fff;\n line-height: 0;\n opacity: 0;\n cursor: pointer;\n transition: opacity 0.3s;\n margin: 2px;\n}\n.explorer-tree-row .row-item-check .btn-check > svg {\n position: relative;\n width: 23px;\n height: 23px;\n left: -2px;\n top: -2px;\n}\n.explorer-tree-row .row-item-check.active .btn-check {\n opacity: 1;\n background: #3b8cff;\n}\n.explorer-tree-row.disable {\n opacity: 0.4;\n}\n.explorer-tree.table .tree-scroll-x {\n width: 100%;\n overflow: hidden;\n overflow-x: auto;\n}\n.explorer-tree.table .tree-scroll-x::-webkit-scrollbar {\n display: none;\n}\n.explorer-tree.table .tree-scroll {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: 10;\n overflow: auto;\n}\n.explorer-tree.table .rc-tree {\n height: calc(100% - 24px);\n}\n.explorer-tree.table .rc-tree-list-holder-inner {\n overflow: auto;\n}\n.explorer-tree.table .rc-tree-list {\n height: 100%;\n}\n.explorer-tree.table .rc-tree-checkbox {\n display: none !important;\n}\n.explorer-tree.table .rc-tree-treenode {\n border-radius: 2px;\n width: fit-content;\n opacity: 0.8;\n z-index: 100;\n pointer-events: all;\n margin-bottom: 2px;\n}\n.explorer-tree.table .rc-tree-treenode.odd {\n background: #4664780d;\n}\n.explorer-tree.table .rc-tree-treenode.drags {\n background: #e5f3ff !important;\n border-color: #1677ff;\n}\n.explorer-tree.table .rc-tree-treenode.dragging {\n opacity: 0.4;\n height: auto !important;\n}\n.explorer-tree.table .rc-tree-treenode.notupload {\n cursor: no-drop !important;\n opacity: 0.5 !important;\n}\n.explorer-tree.table .rc-tree-list-holder-inner {\n padding: 8px 0 0 8px;\n}\n.explorer-tree.table .rc-tree-treenode-leaf-last:last-child {\n height: 200px;\n opacity: 0;\n width: 1px;\n}\n.explorer-tree.table .rc-tree-treenode-checkbox-checked {\n background: #cce8ff !important;\n border: 1px solid #99d1ff;\n}\n.explorer-tree .rc-tree-iconEle {\n height: 31px !important;\n vertical-align: top !important;\n width: auto !important;\n}\n.explorer-tree .rc-tree-treenode {\n position: relative;\n height: 31px;\n line-height: 31px;\n border: 1px solid transparent;\n user-select: none;\n display: flex;\n}\n.explorer-tree .rc-tree-treenode > .rc-tree-node-content-wrapper {\n height: 31px !important;\n display: flex !important;\n flex: 1;\n margin-left: calc(24px - 20px);\n overflow: hidden;\n}\n.explorer-tree .rc-tree-treenode > .rc-tree-node-selected {\n background-color: transparent;\n box-shadow: none;\n opacity: 1;\n}\n.explorer-tree .rc-tree-treenode.rc-tree-treenode-selected {\n background-color: #cce8ff !important;\n border: 1px solid #1890ff;\n opacity: 0.8;\n}\n.explorer-tree .rc-tree-treenode.rc-tree-treenode-selected .node-menu {\n display: flex;\n}\n.explorer-tree .rc-tree-treenode.rc-tree-treenode-active {\n background-color: #cce8ff !important;\n border: 1px solid #1890ff;\n}\n.explorer-tree .rc-tree-treenode.rc-tree-treenode-active .row-item-content {\n font-weight: 500;\n}\n.explorer-tree .rc-tree-treenode:hover {\n background: #e5f3ff !important;\n box-shadow: 0 0 0 1px transparent;\n}\n.explorer-tree .rc-tree-treenode.hover {\n background: #e5f3ff !important;\n}\n.explorer-tree .rc-tree-switcher {\n flex-shrink: 0;\n width: 20px !important;\n height: 31px !important;\n vertical-align: top !important;\n background-image: none !important;\n}\n.explorer-tree .rc-tree-title {\n display: inline-block;\n height: 31px;\n width: 100%;\n overflow: hidden;\n}\n.explorer-tree.showLine .rc-tree-indent {\n height: 31px;\n}\n.explorer-tree.showLine .rc-tree-indent > .rc-tree-indent-unit {\n position: relative;\n}\n.explorer-tree.showLine .rc-tree-indent > .rc-tree-indent-unit::after {\n display: inline-block;\n position: absolute;\n content: '';\n width: 1px;\n left: 10px;\n height: 31px;\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.showLine .rc-tree-indent-unit {\n width: 20px;\n height: 31px;\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:last-child {\n position: relative;\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:last-child::before {\n content: '';\n display: inline-block;\n position: absolute;\n width: 8px;\n top: calc(31px / 2);\n left: 10px;\n height: 1px;\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:last-child::after {\n display: inline-block;\n position: absolute;\n content: '';\n width: 1px;\n left: 10px;\n top: 0;\n height: calc(31px / 2);\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:first-child {\n position: relative;\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:first-child::before {\n display: none;\n content: '';\n}\n.explorer-tree.showLine .rc-tree-treenode-leaf-last .rc-tree-indent > .rc-tree-indent-unit:first-child::after {\n display: inline-block;\n position: absolute;\n content: '';\n width: 1px;\n left: 10px;\n height: 31px;\n background-color: rgba(0, 0, 0, 0.075);\n}\n.explorer-tree.explorer-checks .rc-tree-treenode:hover .row-item-check .btn-check {\n opacity: 1;\n}\n.explorer-tree .rc-tree-list-scrollbar-thumb {\n background: #bbb !important;\n}\n.explorer-tree .rc-tree-list-scrollbar {\n width: 5px !important;\n height: 5px !important;\n}\n.explorer-tree .node-motion {\n transition: all 0.3s;\n overflow-y: hidden;\n}\n.explorer-tree .rc-tree-child-tree {\n display: block;\n}\n.explorer-table-header {\n display: flex;\n width: fit-content;\n min-width: 100%;\n height: 25px;\n line-height: 25px;\n color: #448;\n border-bottom: 1px solid #e3e3e3;\n box-shadow: 0 6px 10px rgba(0, 0, 0, 0.05);\n background: #fff;\n}\n.explorer-table-header .item {\n padding: 0 10px 0 0;\n flex: 1 0 0;\n margin-left: -10px;\n border-right: 1px solid #eee;\n user-select: none;\n min-width: 80px;\n}\n.explorer-table-header .item:first-child {\n padding-left: 20px;\n}\n.explorer-table-header .resize {\n position: relative;\n flex: 0 0 20px;\n width: 20px;\n z-index: 10;\n cursor: col-resize;\n left: -10px;\n transition: background 0.2s;\n}\n.explorer-table-header .resize::before {\n content: '';\n position: fixed;\n width: 1px;\n height: 2000px;\n z-index: 10;\n margin-left: 10px;\n visibility: hidden;\n opacity: 0;\n transition: all 0.2s;\n}\n.explorer-table-header .resize:hover {\n background: #1890ff30;\n}\n.explorer-table-header .resize.resize-focus {\n z-index: 9999;\n}\n.explorer-table-header .resize.resize-focus:before {\n opacity: 1;\n background: #1890ff;\n visibility: visible;\n}\n.explorer-table-header .resize:last-child {\n flex: 0 0 10px;\n width: 10px;\n}\n.explorer-table-header.item-resize {\n z-index: 10;\n}\n@keyframes rotate {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n";
2551
2548
  styleInject(css_248z$7);
2552
2549
 
2553
2550
  /**
@@ -5565,6 +5562,7 @@ function TableItem(props) {
5565
5562
  onCheck,
5566
5563
  onMenuClick,
5567
5564
  isdrag,
5565
+ isUpload,
5568
5566
  rename,
5569
5567
  onRename,
5570
5568
  onSelect,
@@ -5583,6 +5581,7 @@ function TableItem(props) {
5583
5581
  "data-id": !disable ? id : null,
5584
5582
  "data-type": !disable ? props.type : null,
5585
5583
  "data-isdrag": isdrag === false ? false : true,
5584
+ "data-upload": isUpload === false ? false : true,
5586
5585
  onContextMenu: e => {
5587
5586
  e.stopPropagation();
5588
5587
  e.preventDefault();
@@ -5930,6 +5929,7 @@ var Tree = /*#__PURE__*/forwardRef((props, _ref) => {
5930
5929
  type = 'tree',
5931
5930
  autoExpandParent,
5932
5931
  defaultExpandedKeys,
5932
+ activeKey,
5933
5933
  treeData,
5934
5934
  checks,
5935
5935
  height,
@@ -6231,13 +6231,24 @@ var Tree = /*#__PURE__*/forwardRef((props, _ref) => {
6231
6231
  setRename(null);
6232
6232
  },
6233
6233
  onMenuClick: menu => {
6234
+ //选判断 是不是 命名
6234
6235
  if (menu == 'rename') {
6235
6236
  setTimeout(() => {
6236
6237
  setRename(v.key);
6237
6238
  });
6238
6239
  return;
6239
6240
  }
6240
- onMenuClick && onMenuClick(menu, v, checks?.length ? undefined : 'menu');
6241
+ /***
6242
+ * 右键 三种情况
6243
+ * 有多选 没在选中内
6244
+ * 有多选 在选中内
6245
+ * 没有多选
6246
+ */
6247
+ if (checks?.length && checks.includes(v.key)) {
6248
+ onMenuClick && onMenuClick(menu, v);
6249
+ } else {
6250
+ onMenuClick && onMenuClick(menu, v, 'menu'); //带menu 是对当前数据进操作 没有是 对选中内容进行操作
6251
+ }
6241
6252
  },
6242
6253
  onCheck: () => {
6243
6254
  let arr = cloneDeep(checks);
@@ -6283,7 +6294,7 @@ var Tree = /*#__PURE__*/forwardRef((props, _ref) => {
6283
6294
  }, v.key);
6284
6295
  },
6285
6296
  onSelect: (v, info) => {
6286
- if (v[0]) {
6297
+ if (v[0] || info?.node?.key) {
6287
6298
  onSelect?.({
6288
6299
  key: v[0],
6289
6300
  ...(info?.node || {})
@@ -6780,10 +6791,13 @@ const SelectBox = props => {
6780
6791
  startPosition,
6781
6792
  setScroll,
6782
6793
  action = 'stack',
6794
+ startDrag,
6795
+ endDrag,
6783
6796
  onChange,
6784
6797
  onMouseup,
6785
6798
  loadData,
6786
- onMenuClick
6799
+ onMenuClick,
6800
+ onFileDarg
6787
6801
  } = props;
6788
6802
  const store = useContext(ExampleContext);
6789
6803
  const selectionRef = useRef(null);
@@ -6872,12 +6886,14 @@ const SelectBox = props => {
6872
6886
  //判断鼠标点击位置 是否为目标区域
6873
6887
  /**
6874
6888
  * @param e 鼠标默认事件
6875
- * @param checkType //筛选类型
6889
+ * @param checkType //判断文件类型
6876
6890
  * @param status//添加状态
6877
6891
  * @param isregion//是否过滤区域
6892
+ * @param drag 判断是否可以拖动
6893
+ * @param upload 判断是否可以上传
6878
6894
  * @returns
6879
6895
  */
6880
- function isSelectTarget(e, checkType, status, isregion, drag = true) {
6896
+ function isSelectTarget(e, checkType, status, isregion, drag = true, upload = false) {
6881
6897
  let idx = [];
6882
6898
  Array.from(document.querySelectorAll(selectClass)).filter(v => {
6883
6899
  if (v.contains(e.target)) {
@@ -6890,6 +6906,13 @@ const SelectBox = props => {
6890
6906
  let isdrag = dataDom?.getAttribute('data-isdrag');
6891
6907
  if (isdrag == 'false') return;
6892
6908
  }
6909
+ if (upload) {
6910
+ let isupload = dataDom?.getAttribute('data-upload');
6911
+ if (isupload == 'false') {
6912
+ v.classList.add('notupload');
6913
+ return;
6914
+ }
6915
+ }
6893
6916
  if (checkType) {
6894
6917
  let type = dataDom?.getAttribute('data-type');
6895
6918
  if (type !== checkType) return;
@@ -6984,7 +7007,8 @@ const SelectBox = props => {
6984
7007
  let target = isSelectTarget(e, 'folder', '', true, false);
6985
7008
  if (target?.[0] && !checks?.includes(target?.[0])) {
6986
7009
  if (target?.[0] !== stageClickInfo.startkey) {
6987
- props.onMoveFile(checks, target?.[0]);
7010
+ let ismove = onFileDarg?.(target[0]) === false;
7011
+ props.onMoveFile(checks, !ismove ? target?.[0] : null);
6988
7012
  }
6989
7013
  }
6990
7014
  removeDragView();
@@ -7009,7 +7033,7 @@ const SelectBox = props => {
7009
7033
  }
7010
7034
  }
7011
7035
  /***************** 拖动 *****************/
7012
- //拖动文件 (外部文件上传)
7036
+ //上传文件拖动中 (外部文件上传)
7013
7037
  const handleDragOver = e => {
7014
7038
  e?.preventDefault();
7015
7039
  const {
@@ -7032,11 +7056,17 @@ const SelectBox = props => {
7032
7056
  }
7033
7057
  let type = dataDom?.getAttribute('data-type');
7034
7058
  if (type !== 'folder') return;
7059
+ let isupload = dataDom?.getAttribute('data-upload');
7060
+ if (isupload == 'false') {
7061
+ v.classList.add('notupload');
7062
+ return;
7063
+ }
7035
7064
  id = dataDom?.getAttribute('data-id');
7036
7065
  is = false;
7037
7066
  v.classList.add('drags');
7038
7067
  } else {
7039
7068
  v.classList.remove('drags');
7069
+ v.classList.remove('notupload');
7040
7070
  }
7041
7071
  });
7042
7072
  if (store.menutype == 'column') {
@@ -7069,11 +7099,12 @@ const SelectBox = props => {
7069
7099
  border:2px solid transparent;
7070
7100
  `;
7071
7101
  }
7102
+ let config = undefined;
7072
7103
  let element = renderDragtext({
7073
7104
  x: x + 20,
7074
7105
  y: y + 20,
7075
7106
  ...param
7076
- });
7107
+ }, config);
7077
7108
  text.current.render(element);
7078
7109
  return [id];
7079
7110
  }
@@ -7130,7 +7161,7 @@ const SelectBox = props => {
7130
7161
  }
7131
7162
  });
7132
7163
  await Promise.all(promises);
7133
- let data = isSelectTarget(e, 'folder', '', true, false);
7164
+ let data = isSelectTarget(e, 'folder', '', true, false, true);
7134
7165
  handleDragLeave();
7135
7166
  let key = null;
7136
7167
  if (typeof data?.[0] == 'string' && store?.dataMap?.[data?.[0]]) {
@@ -7159,10 +7190,12 @@ const SelectBox = props => {
7159
7190
  }
7160
7191
  Array.from(document.querySelectorAll(selectClass)).filter(v => {
7161
7192
  v.classList.remove('drags');
7193
+ v.classList.remove('notupload');
7162
7194
  });
7163
7195
  if (store.menutype == 'column') {
7164
7196
  Array.from(document.querySelectorAll('.explorer-columns .layer')).filter(v => {
7165
7197
  v.classList.remove('drags');
7198
+ v.classList.remove('notupload');
7166
7199
  });
7167
7200
  }
7168
7201
  if (ref.current) {
@@ -7181,7 +7214,7 @@ const SelectBox = props => {
7181
7214
  setIsDragUpload(true);
7182
7215
  }
7183
7216
  /*********** 创建绘制页面 (拖动是执行样式) *************/
7184
- //创建文案
7217
+ //拖动到文件上方时 展示的字体
7185
7218
  function createText() {
7186
7219
  let _box = null;
7187
7220
  let body = null;
@@ -7209,7 +7242,7 @@ const SelectBox = props => {
7209
7242
  body?.appendChild(_box);
7210
7243
  }
7211
7244
  }
7212
- //创建选框 并过滤 数据
7245
+ //创建选框 并过滤数据
7213
7246
  function createBox(e) {
7214
7247
  if (stageClickInfo.show) {
7215
7248
  let region = null;
@@ -7544,7 +7577,7 @@ const SelectBox = props => {
7544
7577
  // onChange(idx);
7545
7578
  }
7546
7579
  }
7547
- //创建 文件拖动视图
7580
+ //拖动选中 文件
7548
7581
  function createDragView(e) {
7549
7582
  const {
7550
7583
  clientX: x,
@@ -7553,9 +7586,9 @@ const SelectBox = props => {
7553
7586
  setDragging(true);
7554
7587
  let body = document.querySelector('body');
7555
7588
  let _box = null;
7556
- //执行动画
7589
+ //文件移动中
7557
7590
  if (cur.current?.length) {
7558
- //文件移动
7591
+ //文件移动时过度动画
7559
7592
  if (cur?.current?.length && isDrag) {
7560
7593
  cur.current?.map((v, i) => {
7561
7594
  let data = v.getBoundingClientRect();
@@ -7596,10 +7629,15 @@ const SelectBox = props => {
7596
7629
  if (dataClass) {
7597
7630
  dataDom = v.querySelector(dataClass);
7598
7631
  }
7632
+ //判断 类型
7599
7633
  let type = dataDom?.getAttribute('data-type');
7600
7634
  if (type !== 'folder') return;
7635
+ //是否能检测到id
7601
7636
  let _id = dataDom?.getAttribute('data-id');
7602
7637
  if (checks?.includes(_id)) return;
7638
+ //暴露出去 让组件外判断是否可以 传入
7639
+ let isDarg = onFileDarg?.(_id);
7640
+ if (isDarg === false) return;
7603
7641
  id = _id;
7604
7642
  is = false;
7605
7643
  v.classList.add('drags');
@@ -7650,6 +7688,7 @@ const SelectBox = props => {
7650
7688
  });
7651
7689
  text.current.render(element);
7652
7690
  } else {
7691
+ startDrag();
7653
7692
  //创建 视图
7654
7693
  createText();
7655
7694
  _box = document.createElement('div');
@@ -7708,6 +7747,7 @@ const SelectBox = props => {
7708
7747
  }
7709
7748
  }
7710
7749
  function removeDragView() {
7750
+ endDrag();
7711
7751
  Array.from(document.querySelectorAll(selectClass)).filter(v => {
7712
7752
  v.classList.remove('drags');
7713
7753
  v.classList.remove('dragging');
@@ -8659,6 +8699,7 @@ const Layout$1 = props => {
8659
8699
  x: 0,
8660
8700
  y: 0
8661
8701
  });
8702
+ const [isdarg, setIsdarg] = useState(false);
8662
8703
  const scroll = useRef({
8663
8704
  x: 0,
8664
8705
  y: 0
@@ -8718,6 +8759,7 @@ const Layout$1 = props => {
8718
8759
  return jsxs("div", {
8719
8760
  className: 'file-continer-main',
8720
8761
  onClick: () => {
8762
+ if (isdarg) return;
8721
8763
  if (store?.menutype !== 'column') {
8722
8764
  store.setCurSelect(null);
8723
8765
  store.setCurSelectFile(null);
@@ -8765,8 +8807,17 @@ const Layout$1 = props => {
8765
8807
  onMouseup: e => {
8766
8808
  clearInterval(time);
8767
8809
  },
8810
+ startDrag: () => {
8811
+ setIsdarg(true);
8812
+ },
8813
+ endDrag: () => {
8814
+ setTimeout(() => {
8815
+ setIsdarg(false);
8816
+ }, 300);
8817
+ },
8768
8818
  onMoveFile: props.onMoveFile,
8769
8819
  onUpload: props.onUpload,
8820
+ onFileDarg: props?.onFileDarg,
8770
8821
  children: [store?.menutype == 'column' && jsx(Columns, {
8771
8822
  ref: columns_srcoll,
8772
8823
  store: store,
@@ -8791,8 +8842,9 @@ const Layout$1 = props => {
8791
8842
  ref: tree_srcoll,
8792
8843
  type: 'table',
8793
8844
  checks: checks,
8845
+ activeKey: props?.activeFile,
8794
8846
  rename: store.reamekey,
8795
- selectedKeys: [store.curSelect],
8847
+ selectedKeys: [props?.activeFile || store.curSelect],
8796
8848
  expandedKeys: store.expandkey,
8797
8849
  loadedKeys: store.loadkey,
8798
8850
  treeData: store.curlist,
@@ -8824,6 +8876,7 @@ const Layout$1 = props => {
8824
8876
  if (v?.type == 'folder' && v.expanded) {
8825
8877
  store.setCurSelectFile(v.key);
8826
8878
  }
8879
+ if (isdarg) return;
8827
8880
  store.setCurSelect(v.key);
8828
8881
  },
8829
8882
  onRename: onRename,
@@ -9147,6 +9200,8 @@ const Layout = props => {
9147
9200
  });
9148
9201
  };
9149
9202
 
9203
+ // import '@gingkoo/pandora/lib/umd/index.min.css';
9204
+ // import '@gingkoo/pandora-icons/fonts/css/all.min.css';
9150
9205
  const defaultColumns = [{
9151
9206
  title: '文件名',
9152
9207
  key: 'title',
@@ -9378,10 +9433,23 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9378
9433
  createFolder: createFolder
9379
9434
  }));
9380
9435
  useEffect(() => {
9381
- if (Array.isArray(filelist)) {
9382
- setCurList(filelist);
9436
+ if (filelist) {
9437
+ if (Array.isArray(filelist)) {
9438
+ setCurList(filelist);
9439
+ }
9440
+ setTimeout(() => {
9441
+ if (filelist?.length && _expandkey) {
9442
+ setExpandkey(_expandkey);
9443
+ } else {
9444
+ setExpandkey([]);
9445
+ }
9446
+ }, 0);
9447
+ } else {
9448
+ if (_expandkey) {
9449
+ setExpandkey(_expandkey);
9450
+ }
9383
9451
  }
9384
- }, [filelist]);
9452
+ }, [filelist, _expandkey]);
9385
9453
  /* ************ 挂载监听 **************** */
9386
9454
  useEffect(() => {
9387
9455
  window.addEventListener('click', closeMenu);
@@ -9490,11 +9558,6 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9490
9558
  setCurSelect(null);
9491
9559
  props?.onCheck?.([]);
9492
9560
  }, [curInfo?.key]);
9493
- useEffect(() => {
9494
- if (_expandkey) {
9495
- setExpandkey(_expandkey);
9496
- }
9497
- }, [_expandkey]);
9498
9561
  useEffect(() => {
9499
9562
  if (isNavtab) return;
9500
9563
  if (!curlist?.length) {
@@ -9817,7 +9880,7 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9817
9880
  return;
9818
9881
  }
9819
9882
  if (key == 'info') {
9820
- openFile({
9883
+ Modal2.openModal({
9821
9884
  className: 'explorer-details-modal',
9822
9885
  modalWidth: 450,
9823
9886
  modalHeight: 620,
@@ -9928,10 +9991,8 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9928
9991
  props.onCheck?.(arr, param);
9929
9992
  }
9930
9993
  async function onMoveFile(cur, target) {
9931
- if (!target) return;
9932
- let info = dataMap?.[target];
9994
+ let info = dataMap?.[target || ''];
9933
9995
  if (!cur?.length) return;
9934
- if (!info) return;
9935
9996
  let data = [];
9936
9997
  cur.forEach(v => {
9937
9998
  if (dataMap?.[v]) {