@whitesev/pops 1.5.2 → 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.
@@ -6068,8 +6068,9 @@ var pops = (function () {
6068
6068
  * @param fileName
6069
6069
  * @param latestTime
6070
6070
  * @param [fileSize="-"]
6071
+ * @param isFolder
6071
6072
  */
6072
- function createFolderRowElement(fileName, latestTime = "-", fileSize = "-") {
6073
+ function createFolderRowElement(fileName, latestTime = "-", fileSize = "-", isFolder = false) {
6073
6074
  let origin_fileName = fileName;
6074
6075
  let origin_latestTime = latestTime;
6075
6076
  let origin_fileSize = fileSize;
@@ -6079,7 +6080,7 @@ var pops = (function () {
6079
6080
  let fileFormatSize = popsDOMUtils.createElement("td");
6080
6081
  let fileType = "";
6081
6082
  let fileIcon = Folder_ICON.folder;
6082
- if (arguments.length === 1) {
6083
+ if (isFolder) {
6083
6084
  /* 文件夹 */
6084
6085
  latestTime = "";
6085
6086
  fileSize = "";
@@ -6134,6 +6135,7 @@ var pops = (function () {
6134
6135
  fileName: origin_fileName,
6135
6136
  latestTime: origin_latestTime,
6136
6137
  fileSize: origin_fileSize,
6138
+ isFolder: isFolder,
6137
6139
  };
6138
6140
  fileNameElement["__value__"] = __value__;
6139
6141
  fileTimeElement["__value__"] = __value__;
@@ -6152,7 +6154,7 @@ var pops = (function () {
6152
6154
  /**
6153
6155
  * 创建移动端文件夹元素
6154
6156
  */
6155
- function createMobileFolderRowElement(fileName, latestTime = "-", fileSize = "-") {
6157
+ function createMobileFolderRowElement(fileName, latestTime = "-", fileSize = "-", isFolder = false) {
6156
6158
  let origin_fileName = fileName;
6157
6159
  let origin_latestTime = latestTime;
6158
6160
  let origin_fileSize = fileSize;
@@ -6160,7 +6162,7 @@ var pops = (function () {
6160
6162
  let fileNameElement = popsDOMUtils.createElement("td");
6161
6163
  let fileType = "";
6162
6164
  let fileIcon = Folder_ICON.folder;
6163
- if (arguments.length === 1) {
6165
+ if (isFolder) {
6164
6166
  /* 文件夹 */
6165
6167
  latestTime = "";
6166
6168
  fileSize = "";
@@ -6204,6 +6206,7 @@ var pops = (function () {
6204
6206
  fileName: origin_fileName,
6205
6207
  latestTime: origin_latestTime,
6206
6208
  fileSize: origin_fileSize,
6209
+ isFolder: isFolder,
6207
6210
  };
6208
6211
  fileNameElement["__value__"] = __value__;
6209
6212
  folderELement["__value__"] = __value__;
@@ -6377,30 +6380,40 @@ var pops = (function () {
6377
6380
  }
6378
6381
  /**
6379
6382
  * 对配置进行排序
6380
- * @param _config_
6383
+ * @param folderDataConfigList
6381
6384
  * @param sortName 比较的属性,默认fileName
6382
6385
  * @param isDesc 是否降序,默认false(升序)
6383
6386
  */
6384
- function sortFolderConfig(_config_, sortName = "fileName", isDesc = false) {
6385
- _config_.sort((a, b) => {
6386
- let beforeVal = a[sortName];
6387
- let afterVal = b[sortName];
6388
- if (sortName === "fileName") {
6389
- /* 文件名,进行字符串转换 */
6390
- beforeVal = beforeVal.toString();
6391
- afterVal = afterVal.toString();
6392
- }
6393
- else if (sortName === "fileSize") {
6394
- /* 文件大小,进行Float转换 */
6395
- beforeVal = parseFloat(beforeVal);
6396
- afterVal = parseFloat(afterVal);
6397
- }
6398
- else if (sortName === "latestTime") {
6399
- /* 文件时间 */
6400
- beforeVal = new Date(beforeVal).getTime();
6401
- afterVal = new Date(afterVal).getTime();
6402
- }
6403
- if (typeof beforeVal === "string" && typeof afterVal === "string") {
6387
+ function sortFolderConfig(folderDataConfigList, sortName = "fileName", isDesc = false) {
6388
+ console.log(folderDataConfigList, sortName, isDesc);
6389
+ if (sortName === "fileName") {
6390
+ // 如果是以文件名排序,文件夹优先放前面
6391
+ let onlyFolderDataConfigList = folderDataConfigList.filter((value) => {
6392
+ return value.isFolder;
6393
+ });
6394
+ let onlyFileDataConfigList = folderDataConfigList.filter((value) => {
6395
+ return !value.isFolder;
6396
+ });
6397
+ // 文件夹排序
6398
+ onlyFolderDataConfigList.sort((leftConfig, rightConfig) => {
6399
+ let beforeVal = leftConfig[sortName].toString();
6400
+ let afterVal = rightConfig[sortName].toString();
6401
+ let compareVal = beforeVal.localeCompare(afterVal);
6402
+ if (isDesc) {
6403
+ /* 降序 */
6404
+ if (compareVal > 0) {
6405
+ compareVal = -1;
6406
+ }
6407
+ else if (compareVal < 0) {
6408
+ compareVal = 1;
6409
+ }
6410
+ }
6411
+ return compareVal;
6412
+ });
6413
+ // 文件名排序
6414
+ onlyFileDataConfigList.sort((leftConfig, rightConfig) => {
6415
+ let beforeVal = leftConfig[sortName].toString();
6416
+ let afterVal = rightConfig[sortName].toString();
6404
6417
  let compareVal = beforeVal.localeCompare(afterVal);
6405
6418
  if (isDesc) {
6406
6419
  /* 降序 */
@@ -6412,8 +6425,30 @@ var pops = (function () {
6412
6425
  }
6413
6426
  }
6414
6427
  return compareVal;
6428
+ });
6429
+ if (isDesc) {
6430
+ // 降序,文件夹在下面
6431
+ return [...onlyFileDataConfigList, ...onlyFolderDataConfigList];
6415
6432
  }
6416
6433
  else {
6434
+ // 升序,文件夹在上面
6435
+ return [...onlyFolderDataConfigList, ...onlyFileDataConfigList];
6436
+ }
6437
+ }
6438
+ else {
6439
+ folderDataConfigList.sort((beforeConfig, afterConfig) => {
6440
+ let beforeVal = beforeConfig[sortName];
6441
+ let afterVal = afterConfig[sortName];
6442
+ if (sortName === "fileSize") {
6443
+ /* 文件大小,进行Float转换 */
6444
+ beforeVal = parseFloat(beforeVal.toString());
6445
+ afterVal = parseFloat(afterVal.toString());
6446
+ }
6447
+ else if (sortName === "latestTime") {
6448
+ /* 文件时间 */
6449
+ beforeVal = new Date(beforeVal).getTime();
6450
+ afterVal = new Date(afterVal).getTime();
6451
+ }
6417
6452
  if (beforeVal > afterVal) {
6418
6453
  if (isDesc) {
6419
6454
  /* 降序 */
@@ -6435,9 +6470,9 @@ var pops = (function () {
6435
6470
  else {
6436
6471
  return 0;
6437
6472
  }
6438
- }
6439
- });
6440
- return _config_;
6473
+ });
6474
+ return folderDataConfigList;
6475
+ }
6441
6476
  }
6442
6477
  /**
6443
6478
  * 添加元素
@@ -6448,8 +6483,8 @@ var pops = (function () {
6448
6483
  _config_.forEach((item) => {
6449
6484
  if (item["isFolder"]) {
6450
6485
  let { folderELement, fileNameElement } = pops.isPhone()
6451
- ? createMobileFolderRowElement(item["fileName"])
6452
- : createFolderRowElement(item["fileName"]);
6486
+ ? createMobileFolderRowElement(item["fileName"], "", "", true)
6487
+ : createFolderRowElement(item["fileName"], "", "", true);
6453
6488
  popsDOMUtils.on(fileNameElement, "click", (event) => {
6454
6489
  refreshFolderInfoClickEvent(event, item);
6455
6490
  });
@@ -6457,8 +6492,8 @@ var pops = (function () {
6457
6492
  }
6458
6493
  else {
6459
6494
  let { folderELement, fileNameElement } = pops.isPhone()
6460
- ? createMobileFolderRowElement(item["fileName"], item["latestTime"], item["fileSize"])
6461
- : createFolderRowElement(item["fileName"], item["latestTime"], item["fileSize"]);
6495
+ ? createMobileFolderRowElement(item["fileName"], item.latestTime, item.fileSize, false)
6496
+ : createFolderRowElement(item["fileName"], item.latestTime, item.fileSize, false);
6462
6497
  setFileClickEvent(fileNameElement, item);
6463
6498
  folderListBodyElement.appendChild(folderELement);
6464
6499
  }
@@ -6495,7 +6530,6 @@ var pops = (function () {
6495
6530
  * @param {PointerEvent} target
6496
6531
  * @param {HTMLElement} event
6497
6532
  * @param {string} sortName
6498
- * @returns
6499
6533
  */
6500
6534
  function arrowSortClickEvent(target, event, sortName) {
6501
6535
  if (!event["notChangeSortRule"]) {
@@ -9949,7 +9983,7 @@ var pops = (function () {
9949
9983
  /** 配置 */
9950
9984
  config = {
9951
9985
  /** 版本号 */
9952
- version: "2024.8.15",
9986
+ version: "2024.9.9",
9953
9987
  cssText: {
9954
9988
  /** 主CSS */
9955
9989
  index: indexCSS,