raintee-maputils 1.0.24 → 1.0.25

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.js CHANGED
@@ -6038,6 +6038,30 @@ function mergeStringAndObject(str, obj) {
6038
6038
  console.error('合并过程中发生错误:', error);
6039
6039
  return str; // 出错时返回原字符串
6040
6040
  }
6041
+ }
6042
+
6043
+ function sortDataFromCNToEN(data) {
6044
+ function isFirstCharLetter(str) {
6045
+ if (!str || typeof str !== 'string') return false;
6046
+ const firstChar = str.charAt(0);
6047
+ return /^[a-zA-Z]$/.test(firstChar);
6048
+ }
6049
+ // 排序逻辑:非字母开头的排前面,字母开头的排后面
6050
+ const sortedData = data.sort((a, b) => {
6051
+
6052
+ const aIsLetter = isFirstCharLetter(a.text);
6053
+ const bIsLetter = isFirstCharLetter(b.text);
6054
+
6055
+ // 如果 a 不是字母开头,b 是字母开头 → a 排前面 → 返回 -1
6056
+ // 如果 a 是字母开头,b 不是字母开头 → b 排前面 → 返回 1
6057
+ // 如果都是或都不是 → 保持原顺序(稳定)或进一步排序
6058
+ if (!aIsLetter && bIsLetter) return -1;
6059
+ if (aIsLetter && !bIsLetter) return 1;
6060
+
6061
+ // 同组内的排序(可选):可以按 text 升序排列
6062
+ return a.text.localeCompare(b.text);
6063
+ });
6064
+ return sortedData
6041
6065
  }
6042
6066
 
6043
6067
  var RainteeSourceMapTool = /*#__PURE__*/Object.freeze({
@@ -6047,6 +6071,7 @@ var RainteeSourceMapTool = /*#__PURE__*/Object.freeze({
6047
6071
  generateKeyValueTableHTML: generateKeyValueTableHTML,
6048
6072
  getLayerIdFidld: getLayerIdFidld,
6049
6073
  mergeStringAndObject: mergeStringAndObject,
6074
+ sortDataFromCNToEN: sortDataFromCNToEN,
6050
6075
  treeDataAdapter: treeDataAdapter,
6051
6076
  treeDataAdapterNext: treeDataAdapterNext
6052
6077
  });