@whitesev/pops 1.5.1 → 1.5.3

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.amd.js CHANGED
@@ -2957,8 +2957,6 @@ define((function () { 'use strict';
2957
2957
  deviation = Number.isNaN(deviation) ? 1 : deviation;
2958
2958
  // 最大值2147483647
2959
2959
  let maxZIndex = Math.pow(2, 31) - 1;
2960
- // 比较值2000000000
2961
- let maxZIndexCompare = 2 * Math.pow(10, 9);
2962
2960
  // 当前页面最大的z-index
2963
2961
  let zIndex = 0;
2964
2962
  // 当前的最大z-index的元素,调试使用
@@ -2981,11 +2979,13 @@ define((function () { 'use strict';
2981
2979
  }
2982
2980
  });
2983
2981
  zIndex += deviation;
2982
+ // 用于比较的值2000000000,大于该值就取该值
2983
+ let maxZIndexCompare = 2 * Math.pow(10, 9);
2984
2984
  if (zIndex >= maxZIndexCompare) {
2985
2985
  // 最好不要超过最大值
2986
2986
  zIndex = maxZIndex;
2987
2987
  }
2988
- return { zIndex: maxZIndex, animElement: maxZIndexNode };
2988
+ return { zIndex: zIndex, animElement: maxZIndexNode };
2989
2989
  },
2990
2990
  /**
2991
2991
  * 获取CSS Rule
@@ -5939,7 +5939,7 @@ define((function () { 'use strict';
5939
5939
  <div class="text-ellip content flex-a-i-center">
5940
5940
  <span>文件名</span>
5941
5941
  <div class="pops-folder-list-table__sort" data-sort="fileName">
5942
- <div class="pops-folder-icon-arrow">
5942
+ <div class="pops-folder-icon-arrow" data-sort="按文件名排序">
5943
5943
  <svg
5944
5944
  viewBox="0 0 1024 1024"
5945
5945
  xmlns="http://www.w3.org/2000/svg">
@@ -5958,7 +5958,7 @@ define((function () { 'use strict';
5958
5958
  <div class="text-ellip content flex-a-i-center">
5959
5959
  <span>修改时间</span>
5960
5960
  <div class="pops-folder-list-table__sort" data-sort="latestTime">
5961
- <div class="pops-folder-icon-arrow">
5961
+ <div class="pops-folder-icon-arrow" title="按修改时间排序">
5962
5962
  <svg
5963
5963
  viewBox="0 0 1024 1024"
5964
5964
  xmlns="http://www.w3.org/2000/svg">
@@ -5977,7 +5977,7 @@ define((function () { 'use strict';
5977
5977
  <div class="text-ellip content flex-a-i-center">
5978
5978
  <span>大小</span>
5979
5979
  <div class="pops-folder-list-table__sort" data-sort="fileSize">
5980
- <div class="pops-folder-icon-arrow">
5980
+ <div class="pops-folder-icon-arrow" title="按大小排序">
5981
5981
  <svg
5982
5982
  viewBox="0 0 1024 1024"
5983
5983
  xmlns="http://www.w3.org/2000/svg">
@@ -6067,8 +6067,9 @@ define((function () { 'use strict';
6067
6067
  * @param fileName
6068
6068
  * @param latestTime
6069
6069
  * @param [fileSize="-"]
6070
+ * @param isFolder
6070
6071
  */
6071
- function createFolderRowElement(fileName, latestTime = "-", fileSize = "-") {
6072
+ function createFolderRowElement(fileName, latestTime = "-", fileSize = "-", isFolder = false) {
6072
6073
  let origin_fileName = fileName;
6073
6074
  let origin_latestTime = latestTime;
6074
6075
  let origin_fileSize = fileSize;
@@ -6078,7 +6079,7 @@ define((function () { 'use strict';
6078
6079
  let fileFormatSize = popsDOMUtils.createElement("td");
6079
6080
  let fileType = "";
6080
6081
  let fileIcon = Folder_ICON.folder;
6081
- if (arguments.length === 1) {
6082
+ if (isFolder) {
6082
6083
  /* 文件夹 */
6083
6084
  latestTime = "";
6084
6085
  fileSize = "";
@@ -6133,6 +6134,7 @@ define((function () { 'use strict';
6133
6134
  fileName: origin_fileName,
6134
6135
  latestTime: origin_latestTime,
6135
6136
  fileSize: origin_fileSize,
6137
+ isFolder: isFolder,
6136
6138
  };
6137
6139
  fileNameElement["__value__"] = __value__;
6138
6140
  fileTimeElement["__value__"] = __value__;
@@ -6151,7 +6153,7 @@ define((function () { 'use strict';
6151
6153
  /**
6152
6154
  * 创建移动端文件夹元素
6153
6155
  */
6154
- function createMobileFolderRowElement(fileName, latestTime = "-", fileSize = "-") {
6156
+ function createMobileFolderRowElement(fileName, latestTime = "-", fileSize = "-", isFolder = false) {
6155
6157
  let origin_fileName = fileName;
6156
6158
  let origin_latestTime = latestTime;
6157
6159
  let origin_fileSize = fileSize;
@@ -6159,7 +6161,7 @@ define((function () { 'use strict';
6159
6161
  let fileNameElement = popsDOMUtils.createElement("td");
6160
6162
  let fileType = "";
6161
6163
  let fileIcon = Folder_ICON.folder;
6162
- if (arguments.length === 1) {
6164
+ if (isFolder) {
6163
6165
  /* 文件夹 */
6164
6166
  latestTime = "";
6165
6167
  fileSize = "";
@@ -6203,6 +6205,7 @@ define((function () { 'use strict';
6203
6205
  fileName: origin_fileName,
6204
6206
  latestTime: origin_latestTime,
6205
6207
  fileSize: origin_fileSize,
6208
+ isFolder: isFolder,
6206
6209
  };
6207
6210
  fileNameElement["__value__"] = __value__;
6208
6211
  folderELement["__value__"] = __value__;
@@ -6376,30 +6379,40 @@ define((function () { 'use strict';
6376
6379
  }
6377
6380
  /**
6378
6381
  * 对配置进行排序
6379
- * @param _config_
6382
+ * @param folderDataConfigList
6380
6383
  * @param sortName 比较的属性,默认fileName
6381
6384
  * @param isDesc 是否降序,默认false(升序)
6382
6385
  */
6383
- function sortFolderConfig(_config_, sortName = "fileName", isDesc = false) {
6384
- _config_.sort((a, b) => {
6385
- let beforeVal = a[sortName];
6386
- let afterVal = b[sortName];
6387
- if (sortName === "fileName") {
6388
- /* 文件名,进行字符串转换 */
6389
- beforeVal = beforeVal.toString();
6390
- afterVal = afterVal.toString();
6391
- }
6392
- else if (sortName === "fileSize") {
6393
- /* 文件大小,进行Float转换 */
6394
- beforeVal = parseFloat(beforeVal);
6395
- afterVal = parseFloat(afterVal);
6396
- }
6397
- else if (sortName === "latestTime") {
6398
- /* 文件时间 */
6399
- beforeVal = new Date(beforeVal).getTime();
6400
- afterVal = new Date(afterVal).getTime();
6401
- }
6402
- if (typeof beforeVal === "string" && typeof afterVal === "string") {
6386
+ function sortFolderConfig(folderDataConfigList, sortName = "fileName", isDesc = false) {
6387
+ console.log(folderDataConfigList, sortName, isDesc);
6388
+ if (sortName === "fileName") {
6389
+ // 如果是以文件名排序,文件夹优先放前面
6390
+ let onlyFolderDataConfigList = folderDataConfigList.filter((value) => {
6391
+ return value.isFolder;
6392
+ });
6393
+ let onlyFileDataConfigList = folderDataConfigList.filter((value) => {
6394
+ return !value.isFolder;
6395
+ });
6396
+ // 文件夹排序
6397
+ onlyFolderDataConfigList.sort((leftConfig, rightConfig) => {
6398
+ let beforeVal = leftConfig[sortName].toString();
6399
+ let afterVal = rightConfig[sortName].toString();
6400
+ let compareVal = beforeVal.localeCompare(afterVal);
6401
+ if (isDesc) {
6402
+ /* 降序 */
6403
+ if (compareVal > 0) {
6404
+ compareVal = -1;
6405
+ }
6406
+ else if (compareVal < 0) {
6407
+ compareVal = 1;
6408
+ }
6409
+ }
6410
+ return compareVal;
6411
+ });
6412
+ // 文件名排序
6413
+ onlyFileDataConfigList.sort((leftConfig, rightConfig) => {
6414
+ let beforeVal = leftConfig[sortName].toString();
6415
+ let afterVal = rightConfig[sortName].toString();
6403
6416
  let compareVal = beforeVal.localeCompare(afterVal);
6404
6417
  if (isDesc) {
6405
6418
  /* 降序 */
@@ -6411,8 +6424,30 @@ define((function () { 'use strict';
6411
6424
  }
6412
6425
  }
6413
6426
  return compareVal;
6427
+ });
6428
+ if (isDesc) {
6429
+ // 降序,文件夹在下面
6430
+ return [...onlyFileDataConfigList, ...onlyFolderDataConfigList];
6414
6431
  }
6415
6432
  else {
6433
+ // 升序,文件夹在上面
6434
+ return [...onlyFolderDataConfigList, ...onlyFileDataConfigList];
6435
+ }
6436
+ }
6437
+ else {
6438
+ folderDataConfigList.sort((beforeConfig, afterConfig) => {
6439
+ let beforeVal = beforeConfig[sortName];
6440
+ let afterVal = afterConfig[sortName];
6441
+ if (sortName === "fileSize") {
6442
+ /* 文件大小,进行Float转换 */
6443
+ beforeVal = parseFloat(beforeVal.toString());
6444
+ afterVal = parseFloat(afterVal.toString());
6445
+ }
6446
+ else if (sortName === "latestTime") {
6447
+ /* 文件时间 */
6448
+ beforeVal = new Date(beforeVal).getTime();
6449
+ afterVal = new Date(afterVal).getTime();
6450
+ }
6416
6451
  if (beforeVal > afterVal) {
6417
6452
  if (isDesc) {
6418
6453
  /* 降序 */
@@ -6434,9 +6469,9 @@ define((function () { 'use strict';
6434
6469
  else {
6435
6470
  return 0;
6436
6471
  }
6437
- }
6438
- });
6439
- return _config_;
6472
+ });
6473
+ return folderDataConfigList;
6474
+ }
6440
6475
  }
6441
6476
  /**
6442
6477
  * 添加元素
@@ -6447,8 +6482,8 @@ define((function () { 'use strict';
6447
6482
  _config_.forEach((item) => {
6448
6483
  if (item["isFolder"]) {
6449
6484
  let { folderELement, fileNameElement } = pops.isPhone()
6450
- ? createMobileFolderRowElement(item["fileName"])
6451
- : createFolderRowElement(item["fileName"]);
6485
+ ? createMobileFolderRowElement(item["fileName"], "", "", true)
6486
+ : createFolderRowElement(item["fileName"], "", "", true);
6452
6487
  popsDOMUtils.on(fileNameElement, "click", (event) => {
6453
6488
  refreshFolderInfoClickEvent(event, item);
6454
6489
  });
@@ -6456,8 +6491,8 @@ define((function () { 'use strict';
6456
6491
  }
6457
6492
  else {
6458
6493
  let { folderELement, fileNameElement } = pops.isPhone()
6459
- ? createMobileFolderRowElement(item["fileName"], item["latestTime"], item["fileSize"])
6460
- : createFolderRowElement(item["fileName"], item["latestTime"], item["fileSize"]);
6494
+ ? createMobileFolderRowElement(item["fileName"], item.latestTime, item.fileSize, false)
6495
+ : createFolderRowElement(item["fileName"], item.latestTime, item.fileSize, false);
6461
6496
  setFileClickEvent(fileNameElement, item);
6462
6497
  folderListBodyElement.appendChild(folderELement);
6463
6498
  }
@@ -6494,7 +6529,6 @@ define((function () { 'use strict';
6494
6529
  * @param {PointerEvent} target
6495
6530
  * @param {HTMLElement} event
6496
6531
  * @param {string} sortName
6497
- * @returns
6498
6532
  */
6499
6533
  function arrowSortClickEvent(target, event, sortName) {
6500
6534
  if (!event["notChangeSortRule"]) {
@@ -9948,7 +9982,7 @@ define((function () { 'use strict';
9948
9982
  /** 配置 */
9949
9983
  config = {
9950
9984
  /** 版本号 */
9951
- version: "2024.8.6",
9985
+ version: "2024.9.9",
9952
9986
  cssText: {
9953
9987
  /** 主CSS */
9954
9988
  index: indexCSS,