@gingkoo/pandora-explorer 0.0.1-alpha.95 → 0.0.1-alpha.97

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/lib/es/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @gingkoo/pandora-explorer v0.0.1-alpha.95
2
+ * @gingkoo/pandora-explorer v0.0.1-alpha.97
3
3
  */
4
4
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
5
  import cx$1 from 'classnames';
@@ -5532,6 +5532,7 @@ function TableItem(props) {
5532
5532
  ischeck,
5533
5533
  onCheck,
5534
5534
  onMenuClick,
5535
+ isdrag,
5535
5536
  rename,
5536
5537
  onRename,
5537
5538
  onSelect,
@@ -5549,6 +5550,7 @@ function TableItem(props) {
5549
5550
  }),
5550
5551
  "data-id": !disable ? id : null,
5551
5552
  "data-type": !disable ? props.type : null,
5553
+ "data-isdrag": isdrag === false ? false : true,
5552
5554
  onContextMenu: e => {
5553
5555
  e.stopPropagation();
5554
5556
  e.preventDefault();
@@ -5595,10 +5597,16 @@ function TableItem(props) {
5595
5597
  } : {},
5596
5598
  children: [jsxs("div", {
5597
5599
  className: 'row-item-content',
5598
- children: [" ", v.render?.(param, v.key)]
5600
+ children: [" ", v.render?.({
5601
+ id,
5602
+ ...param
5603
+ }, v.key)]
5599
5604
  }), jsx("div", {
5600
5605
  className: 'row-item-tool',
5601
- children: v?.renderTool ? v?.renderTool(param, v.key) : !i && jsx("div", {
5606
+ children: v?.renderTool ? v?.renderTool({
5607
+ id,
5608
+ ...param
5609
+ }, v.key) : !i && jsx("div", {
5602
5610
  className: cx$1('row-item-check', {
5603
5611
  active: active
5604
5612
  }),
@@ -5680,7 +5688,10 @@ function TableItem(props) {
5680
5688
  children: param[v?.key] || ''
5681
5689
  }), jsx("div", {
5682
5690
  className: 'row-item-tool',
5683
- children: v?.renderTool ? v?.renderTool(param, v.key) : !i && jsx("div", {
5691
+ children: v?.renderTool ? v?.renderTool({
5692
+ id,
5693
+ ...param
5694
+ }, v.key) : !i && jsx("div", {
5684
5695
  className: cx$1('row-item-check', {
5685
5696
  active: active
5686
5697
  }),
@@ -5942,7 +5953,7 @@ var Tree = /*#__PURE__*/forwardRef((props, _ref) => {
5942
5953
  return size > w ? size : Math.ceil(w);
5943
5954
  }, [width, _widht]);
5944
5955
  useEffect(() => {
5945
- let arr = cloneDeep(treeData);
5956
+ let arr = cloneDeep(treeData) || [];
5946
5957
  arr = addLevel(arr, 0, type, filterData);
5947
5958
  setData(arr);
5948
5959
  }, [treeData, type, filterData]);
@@ -6834,7 +6845,7 @@ const SelectBox = props => {
6834
6845
  * @param isregion//是否过滤区域
6835
6846
  * @returns
6836
6847
  */
6837
- function isSelectTarget(e, checkType, status, isregion) {
6848
+ function isSelectTarget(e, checkType, status, isregion, drag = true) {
6838
6849
  let idx = [];
6839
6850
  Array.from(document.querySelectorAll(selectClass)).filter(v => {
6840
6851
  if (v.contains(e.target)) {
@@ -6843,6 +6854,10 @@ const SelectBox = props => {
6843
6854
  dataDom = v.querySelector(dataClass);
6844
6855
  }
6845
6856
  let id = dataDom?.getAttribute('data-id');
6857
+ if (drag) {
6858
+ let isdrag = dataDom?.getAttribute('data-isdrag');
6859
+ if (isdrag == 'false') return;
6860
+ }
6846
6861
  if (checkType) {
6847
6862
  let type = dataDom?.getAttribute('data-type');
6848
6863
  if (type !== checkType) return;
@@ -6934,7 +6949,7 @@ const SelectBox = props => {
6934
6949
  });
6935
6950
  onMouseup?.(e);
6936
6951
  if (cur.current?.length) {
6937
- let target = isSelectTarget(e, 'folder', '', true);
6952
+ let target = isSelectTarget(e, 'folder', '', true, false);
6938
6953
  if (target?.[0] && !checks?.includes(target?.[0])) {
6939
6954
  if (target?.[0] !== stageClickInfo.startkey) {
6940
6955
  props.onMoveFile(checks, target?.[0]);
@@ -6962,7 +6977,7 @@ const SelectBox = props => {
6962
6977
  }
6963
6978
  }
6964
6979
  /***************** 拖动 *****************/
6965
- //拖动文件
6980
+ //拖动文件 (外部文件上传)
6966
6981
  const handleDragOver = e => {
6967
6982
  e?.preventDefault();
6968
6983
  const {
@@ -7083,7 +7098,7 @@ const SelectBox = props => {
7083
7098
  }
7084
7099
  });
7085
7100
  await Promise.all(promises);
7086
- let data = isSelectTarget(e, 'folder', '', true);
7101
+ let data = isSelectTarget(e, 'folder', '', true, false);
7087
7102
  handleDragLeave();
7088
7103
  let key = null;
7089
7104
  if (typeof data?.[0] == 'string' && store?.dataMap?.[data?.[0]]) {
@@ -7133,7 +7148,7 @@ const SelectBox = props => {
7133
7148
  }
7134
7149
  setIsDragUpload(true);
7135
7150
  }
7136
- /*********** 创建绘制页面 *************/
7151
+ /*********** 创建绘制页面 (拖动是执行样式) *************/
7137
7152
  //创建文案
7138
7153
  function createText() {
7139
7154
  let _box = null;
@@ -7310,6 +7325,8 @@ const SelectBox = props => {
7310
7325
  let type = dataDom?.getAttribute('data-type');
7311
7326
  if (type !== checkType) return;
7312
7327
  }
7328
+ let isdrag = dataDom?.getAttribute('data-isdrag');
7329
+ if (isdrag == 'false') return;
7313
7330
  let id = dataDom?.getAttribute('data-id');
7314
7331
  if (id && !idx.includes(id)) {
7315
7332
  idx.push(id);
@@ -7901,7 +7918,7 @@ const SelectBox = props => {
7901
7918
  store: store,
7902
7919
  menu: menudata,
7903
7920
  loadMenu: v => {
7904
- let menu = loadMenu(v);
7921
+ let menu = loadMenu?.(v);
7905
7922
  if (menu?.key == 'rename') return undefined;
7906
7923
  if (menu?.key == 'copy') return undefined;
7907
7924
  return menu;
@@ -9062,9 +9079,9 @@ const Layout = props => {
9062
9079
  poi: isNavtab ? [200] : [0, 'max'],
9063
9080
  fix: [true, false],
9064
9081
  rang: [10, 350],
9065
- children: [jsx(ExplorerMenu, {
9082
+ children: [isNavtab ? jsx(ExplorerMenu, {
9066
9083
  ...props
9067
- }), jsxs("div", {
9084
+ }) : jsx(Fragment, {}), jsxs("div", {
9068
9085
  className: 'frame-right',
9069
9086
  children: [isHeader && jsx("div", {
9070
9087
  className: 'frame-header',
@@ -9248,6 +9265,7 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9248
9265
  accept,
9249
9266
  selectedSuffix,
9250
9267
  multiple = true,
9268
+ filelist,
9251
9269
  expandkey: _expandkey,
9252
9270
  createFile,
9253
9271
  onCopy,
@@ -9313,6 +9331,11 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9313
9331
  },
9314
9332
  createFolder: createFolder
9315
9333
  }));
9334
+ useEffect(() => {
9335
+ if (Array.isArray(filelist)) {
9336
+ setCurList(filelist);
9337
+ }
9338
+ }, [filelist]);
9316
9339
  /* ************ 挂载监听 **************** */
9317
9340
  useEffect(() => {
9318
9341
  window.addEventListener('click', closeMenu);
@@ -9415,7 +9438,9 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9415
9438
  }, [curlist, curSelectFile, curInfo]);
9416
9439
  //切换当前 文件目录时 需要清空的内容
9417
9440
  useEffect(() => {
9441
+ if (!curInfo?.key) return;
9418
9442
  setExpandkey([]);
9443
+ onExpand?.([]);
9419
9444
  setCurSelect(null);
9420
9445
  props?.onCheck?.([]);
9421
9446
  }, [curInfo?.key]);
@@ -9437,6 +9462,7 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9437
9462
  }, [dataMap]);
9438
9463
  /* ************ 加载更新数据 **************** */
9439
9464
  async function loadData(key, param, closeload = true) {
9465
+ if (!props?.loadData) return;
9440
9466
  closeload && setLoading(ApiStatusEnum.LOADING);
9441
9467
  let data = (await props.loadData?.(key, param)) || {};
9442
9468
  if (data.status == 'Err') {
@@ -9648,7 +9674,8 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9648
9674
  type: _type,
9649
9675
  title: _type == 'folder' ? '新建文件夹' : `新建文件.${suffix}`,
9650
9676
  create_file: true,
9651
- suffix: suffix
9677
+ suffix: suffix,
9678
+ parent: params
9652
9679
  });
9653
9680
  setCurList(list);
9654
9681
  }
@@ -9815,8 +9842,8 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9815
9842
  if (curInfo || !isNavtab) {
9816
9843
  setLoading(ApiStatusEnum.LOADING);
9817
9844
  await createFile?.(value, param, info);
9818
- await loadData(curInfo?.key || '', null, false);
9819
- reloadNode(curInfo?.key || '', param);
9845
+ await loadData?.(curInfo?.key || '', null, false);
9846
+ // data && reloadNode(curInfo?.key || '', param);
9820
9847
  setLoading(ApiStatusEnum.READY);
9821
9848
  }
9822
9849
  } else {
@@ -9834,7 +9861,7 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9834
9861
  });
9835
9862
  }
9836
9863
  } else {
9837
- curInfo?.key && loadData(curInfo?.key || '');
9864
+ loadData(curInfo?.key || '');
9838
9865
  updata(key, {
9839
9866
  title: value
9840
9867
  });
@@ -9902,7 +9929,7 @@ const Explorer = /*#__PURE__*/forwardRef((props, ref) => {
9902
9929
  totalNum,
9903
9930
  //icon
9904
9931
  getIcons: Icons,
9905
- loadMenu: props.loadMenu,
9932
+ loadMenu: props?.loadMenu,
9906
9933
  uploadFile,
9907
9934
  createFolder,
9908
9935
  reloadNode,