@kaitify/core 0.0.1-beta.10 → 0.0.1-beta.12

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/README.md CHANGED
@@ -1,3 +1,3 @@
1
- #### 基于原生 JS 的富文本编辑器核心库
1
+ ##### 基于原生 JS 的富文本编辑器核心库
2
2
 
3
- > 具体使用方法请参阅:[@kaitify/core](https://www.so-better.cn/kaitify-core/)
3
+ > [@kaitify/core 官方文档](https://www.so-better.cn/docs/kaitify-core/)
@@ -67,7 +67,7 @@ const common = {
67
67
  return /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/.test(text2);
68
68
  }
69
69
  if (param == "plate") {
70
- return /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/.test(text2);
70
+ return /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$|^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]{1}[D|F]{1}[A-Z0-9]{5,6}$/.test(text2);
71
71
  }
72
72
  return false;
73
73
  },
@@ -573,10 +573,8 @@ const element = {
573
573
  * @param {Object} selector 支持多选择器,等同于querySelectorAll的参数
574
574
  */
575
575
  children(el, selector) {
576
- const res = el.querySelectorAll(selector ?? "*");
577
- return [...res].filter((ele) => {
578
- return ele.parentNode === el;
579
- });
576
+ const elements = Array.from(el.querySelectorAll(selector ?? "*"));
577
+ return Array.from(elements).filter((elm) => this.isParentNode(el, elm));
580
578
  },
581
579
  /**
582
580
  * 查找某个元素下指定选择器的兄弟元素
@@ -587,10 +585,8 @@ const element = {
587
585
  if (!el.parentNode) {
588
586
  return [];
589
587
  }
590
- const res = el.parentNode.querySelectorAll(selector ?? "*");
591
- return [...res].filter((ele) => {
592
- return ele.parentNode === el.parentNode && ele != el;
593
- });
588
+ const elements = Array.from(el.parentNode.querySelectorAll(selector ?? "*"));
589
+ return elements.filter((elm) => elm.parentNode === el.parentNode && elm != el);
594
590
  },
595
591
  /**
596
592
  * rem与px单位转换
@@ -918,20 +914,19 @@ const element = {
918
914
  if (/^#{1}/.test(selector)) {
919
915
  return {
920
916
  type: "id",
921
- value: selector.substr(1)
917
+ value: selector.substring(1)
922
918
  };
923
919
  }
924
920
  if (/^\./.test(selector)) {
925
921
  return {
926
922
  type: "class",
927
- value: selector.substr(1)
923
+ value: selector.substring(1)
928
924
  };
929
925
  }
930
926
  if (/^\[(.+)\]$/.test(selector)) {
931
- let type = "attribute";
932
927
  let value = "";
933
- let attribute = string.trim(selector, true).substring(1, string.trim(selector, true).length - 1);
934
- let arry = attribute.split("=");
928
+ const attribute = string.trim(selector, true).substring(1, string.trim(selector, true).length - 1);
929
+ const arry = attribute.split("=");
935
930
  if (arry.length == 1) {
936
931
  value = arry[0];
937
932
  }
@@ -943,7 +938,7 @@ const element = {
943
938
  };
944
939
  }
945
940
  return {
946
- type,
941
+ type: "attribute",
947
942
  value
948
943
  };
949
944
  }
@@ -980,7 +975,7 @@ const element = {
980
975
  * @param {Object} el
981
976
  */
982
977
  isElement(el) {
983
- return el && el instanceof Node && el.nodeType === 1;
978
+ return !!el && el instanceof Node && el.nodeType === 1;
984
979
  },
985
980
  /**
986
981
  * 字符串转dom
@@ -1112,7 +1107,7 @@ const event = {
1112
1107
  };
1113
1108
  const file = {
1114
1109
  /**
1115
- * 根据文件获取可预览的图片路径
1110
+ * 根据文件获取本地可预览的图片路径
1116
1111
  * @param {Object} file
1117
1112
  */
1118
1113
  getImageUrl(file2) {
@@ -1249,7 +1244,7 @@ const platform = {
1249
1244
  //是否edge浏览器
1250
1245
  Edge: !!userAgent.match(/Edg\/([\d.]+)/),
1251
1246
  //是否微信内置浏览器
1252
- weixin: userAgent.includes("MicroMessenger"),
1247
+ Weixin: userAgent.includes("MicroMessenger"),
1253
1248
  //是否QQ内置浏览器
1254
1249
  QQ: userAgent.includes("QQ"),
1255
1250
  //是否QQ浏览器
@@ -1261,7 +1256,7 @@ const platform = {
1261
1256
  //是否火狐浏览器
1262
1257
  Firefox: userAgent.includes("Firefox"),
1263
1258
  //是否搜狗浏览器
1264
- sougou: userAgent.toLocaleLowerCase().includes("se 2.x") || userAgent.toLocaleLowerCase().includes("metasr") || userAgent.toLocaleLowerCase().includes("sogou"),
1259
+ Sougou: userAgent.toLocaleLowerCase().includes("se 2.x") || userAgent.toLocaleLowerCase().includes("metasr") || userAgent.toLocaleLowerCase().includes("sogou"),
1265
1260
  //是否safari浏览器
1266
1261
  Safari: userAgent.includes("Safari") && !userAgent.includes("Chrome")
1267
1262
  };
@@ -1280,7 +1275,6 @@ const platform = {
1280
1275
  if (userAgent.includes("Gecko") && !userAgent.includes("KHTML")) {
1281
1276
  return "gecko";
1282
1277
  }
1283
- return "";
1284
1278
  },
1285
1279
  /**
1286
1280
  * 获取操作系统数据
@@ -1291,31 +1285,29 @@ const platform = {
1291
1285
  //是否Windows系统
1292
1286
  Windows: userAgent.includes("Windows"),
1293
1287
  //x64/x32
1294
- Windows_CPU: function() {
1288
+ WindowsCPU: function() {
1295
1289
  if (userAgent.toLocaleLowerCase().includes("win64") || userAgent.toLocaleLowerCase().includes("wow64")) {
1296
1290
  return "x64";
1297
1291
  } else if (userAgent.toLocaleLowerCase().includes("win32") || userAgent.toLocaleLowerCase().includes("wow32")) {
1298
1292
  return "x32";
1299
1293
  }
1300
- return "";
1301
1294
  }(),
1302
1295
  //Windows版本
1303
- Windows_Version: function() {
1296
+ WindowsVersion: function() {
1304
1297
  if (userAgent.includes("Windows NT 6.1") || userAgent.includes("Windows 7")) {
1305
- return "Win7";
1298
+ return "win7";
1306
1299
  }
1307
1300
  if (userAgent.includes("Windows NT 6.3") || userAgent.includes("Windows NT 6.2") || userAgent.includes("Windows NT 8")) {
1308
- return "Win8";
1301
+ return "win8";
1309
1302
  }
1310
1303
  if (userAgent.includes("Windows NT 10") || userAgent.includes("Windows NT 6.4")) {
1311
- return "Win10";
1304
+ return "win10";
1312
1305
  }
1313
- return "";
1314
1306
  }(),
1315
1307
  //是否Mac
1316
1308
  Mac: userAgent.includes("Macintosh"),
1317
1309
  //Mac版本
1318
- Mac_Version: function() {
1310
+ MacVersion: function() {
1319
1311
  if (userAgent.includes("Macintosh")) {
1320
1312
  const matches = userAgent.match(/Mac OS X ([^\s]+)\)/);
1321
1313
  if (matches && matches[1]) {
@@ -1327,7 +1319,7 @@ const platform = {
1327
1319
  //是否ios系统
1328
1320
  ios: !!userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
1329
1321
  //ios系统版本
1330
- ios_Version: function() {
1322
+ iosVersion: function() {
1331
1323
  if (!!userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)) {
1332
1324
  const matches = userAgent.match(/CPU.+OS ([^\s]+) like Mac OS X/);
1333
1325
  if (matches && matches[1]) {
@@ -1339,7 +1331,7 @@ const platform = {
1339
1331
  //是否Android系统
1340
1332
  Android: userAgent.includes("Android"),
1341
1333
  //Android系统版本
1342
- Android_Version: function() {
1334
+ AndroidVersion: function() {
1343
1335
  const matches = userAgent.match(/Android ([^\s]+);/);
1344
1336
  if (matches && matches[1]) {
1345
1337
  return matches[1].split(/_|\./).join(".");