@whitesev/pops 4.2.2 → 4.2.4

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.
Files changed (44) hide show
  1. package/dist/index.amd.js +69 -6
  2. package/dist/index.amd.js.map +1 -1
  3. package/dist/index.amd.min.js +1 -1
  4. package/dist/index.amd.min.js.map +1 -1
  5. package/dist/index.cjs.js +69 -6
  6. package/dist/index.cjs.js.map +1 -1
  7. package/dist/index.cjs.min.js +1 -1
  8. package/dist/index.cjs.min.js.map +1 -1
  9. package/dist/index.esm.js +69 -6
  10. package/dist/index.esm.js.map +1 -1
  11. package/dist/index.esm.min.js +1 -1
  12. package/dist/index.esm.min.js.map +1 -1
  13. package/dist/index.iife.js +69 -6
  14. package/dist/index.iife.js.map +1 -1
  15. package/dist/index.iife.min.js +1 -1
  16. package/dist/index.iife.min.js.map +1 -1
  17. package/dist/index.system.js +69 -6
  18. package/dist/index.system.js.map +1 -1
  19. package/dist/index.system.min.js +1 -1
  20. package/dist/index.system.min.js.map +1 -1
  21. package/dist/index.umd.js +69 -6
  22. package/dist/index.umd.js.map +1 -1
  23. package/dist/index.umd.min.js +1 -1
  24. package/dist/index.umd.min.js.map +1 -1
  25. package/dist/types/src/Pops.d.ts +19 -0
  26. package/dist/types/src/PopsCSS.d.ts +12 -0
  27. package/dist/types/src/components/tooltip/index.d.ts +18 -0
  28. package/dist/types/src/utils/PopsUtils.d.ts +2 -2
  29. package/package.json +14 -14
  30. package/src/PopsCSS.ts +13 -0
  31. package/src/components/alert/index.ts +4 -0
  32. package/src/components/confirm/index.ts +4 -0
  33. package/src/components/drawer/index.ts +4 -0
  34. package/src/components/folder/index.ts +4 -0
  35. package/src/components/iframe/index.ts +4 -0
  36. package/src/components/loading/index.ts +1 -0
  37. package/src/components/panel/index.ts +4 -0
  38. package/src/components/prompt/index.ts +4 -0
  39. package/src/components/rightClickMenu/index.ts +4 -0
  40. package/src/components/searchSuggestion/index.ts +4 -0
  41. package/src/components/tooltip/index.ts +4 -0
  42. package/src/css/skeleton.css +43 -0
  43. package/src/utils/PopsInstanceUtils.ts +3 -4
  44. package/src/utils/PopsUtils.ts +13 -4
package/dist/index.umd.js CHANGED
@@ -4,7 +4,7 @@
4
4
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.pops = factory());
5
5
  })(this, (function () { 'use strict';
6
6
 
7
- const version = "4.2.2";
7
+ const version = "4.2.4";
8
8
 
9
9
  const GlobalConfig = {
10
10
  config: {},
@@ -679,6 +679,10 @@
679
679
  if (typeof deviation !== "number" || Number.isNaN(deviation)) {
680
680
  deviation = 10;
681
681
  }
682
+ // 最大值 2147483647
683
+ // const maxZIndex = Math.pow(2, 31) - 1;
684
+ // 比较值 2000000000
685
+ const maxZIndexCompare = 2 * Math.pow(10, 9);
682
686
  /** 坐标偏移 */
683
687
  const positionDistance = 10;
684
688
  const defaultCalcPostion = [];
@@ -773,9 +777,14 @@
773
777
  left: maxRect.left,
774
778
  };
775
779
  }
780
+ const calcZIndex = zIndex + deviation;
781
+ if (calcZIndex >= maxZIndexCompare) {
782
+ // 不要超过最大值
783
+ return;
784
+ }
776
785
  return {
777
786
  /** 计算偏移量后的z-index值 */
778
- zIndex: zIndex + deviation,
787
+ zIndex: calcZIndex,
779
788
  /** 获取到的最大的z-index值 */
780
789
  originZIndex: zIndex,
781
790
  /** 拥有最大z-index的元素 */
@@ -2998,6 +3007,8 @@
2998
3007
 
2999
3008
  var panelComponents_Select_CSS = ".pops {\n max-height: 300px;\n}\n.select-container {\n --el-font-size-base: 14px;\n --el-text-color-regular: #606266;\n --el-color-primary: #409eff;\n --el-fill-color-light: #f5f7fa;\n --el-disable-color: #a8abb2;\n}\n.select-item {\n cursor: pointer;\n font-size: var(--el-font-size-base);\n padding: 0 20px 0 20px;\n position: relative;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--el-text-color-regular);\n min-height: 34px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n box-sizing: border-box;\n}\n.select-item[aria-disabled],\n.select-item[disabled] {\n cursor: not-allowed;\n color: var(--el-disable-color);\n background: unset;\n}\n.select-item:hover {\n background-color: var(--el-fill-color-light);\n}\n.select-item.select-item-is-selected:has(.pops-panel-input input) {\n background-color: #e7e7e7;\n}\n.select-item.select-item-is-selected {\n color: var(--el-color-primary);\n font-weight: 700;\n}\n.select-item.select-item-is-selected:not(:has(.pops-panel-input))::after {\n content: \"\";\n position: absolute;\n top: 50%;\n right: 12px;\n border-top: none;\n border-right: none;\n background-repeat: no-repeat;\n background-position: center;\n background-color: var(--el-color-primary);\n mask: url(\"data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E\")\n no-repeat;\n mask-size: 100% 100%;\n -webkit-mask: url(\"data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E\")\n no-repeat;\n -webkit-mask-size: 100% 100%;\n transform: translateY(-50%);\n width: 12px;\n height: 12px;\n}\n\n.select-item .pops-panel-input {\n width: 100%;\n margin: 5px 0px;\n}\n.select-item .pops-panel-input:has(.pops-panel-input-valid-error) {\n margin-bottom: 0px;\n}\n\n.select-item .select-item-text {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n@media (prefers-color-scheme: dark) {\n .select-container {\n --el-text-color-regular: #f2f2f2;\n --el-disable-color: #8d9095;\n --el-fill-color-light: #262727;\n }\n}\n";
3000
3009
 
3010
+ var skeletonCSS = ".pops-skeleton-item {\n --el-skeleton-color: #f0f2f5;\n --el-skeleton-to-color: #e6e8eb;\n width: 100%;\n height: 18px;\n border-radius: 4px;\n background: var(--el-skeleton-color);\n display: inline-block;\n}\n.pops-skeleton-item[data-circle] {\n border-radius: 50%;\n}\n.pops-skeleton-item[data-img] {\n width: unset;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 0px;\n}\n.pops-skeleton-item[data-img] svg {\n color: #dcdfe6;\n fill: currentcolor;\n width: 22%;\n height: 22%;\n}\n.pops-skeleton-item[data-animated] {\n background: linear-gradient(\n 90deg,\n var(--el-skeleton-color) 25%,\n var(--el-skeleton-to-color) 37%,\n var(--el-skeleton-color) 63%\n );\n background-size: 400% 100%;\n animation: pops-el-skeleton-loading 1.4s ease infinite;\n}\n@keyframes pops-el-skeleton-loading {\n 0% {\n background-position: 100% 50%;\n }\n 100% {\n background-position: 0 50%;\n }\n}\n";
3011
+
3001
3012
  const PopsCSS = {
3002
3013
  /** 主CSS */
3003
3014
  index: indexCSS,
@@ -3033,6 +3044,18 @@
3033
3044
  rightClickMenu: rightClickMenuCSS,
3034
3045
  /** pops.panel的select组件 */
3035
3046
  panelComponents_Select: panelComponents_Select_CSS,
3047
+ /**
3048
+ * pops.skeleton
3049
+ *
3050
+ * 需要设置元素className为`pops-skeleton-item`
3051
+ *
3052
+ * 支持以下属性
3053
+ *
3054
+ * + `data-animated`: 加载中的动画
3055
+ * + `data-circle`: 圆形
3056
+ * + `data-img`: 头像图片,需要在它内部添加图片的svg `PopsIcon.getIcon("picture")`
3057
+ */
3058
+ skeletonCSS: skeletonCSS,
3036
3059
  };
3037
3060
 
3038
3061
  const PopsAnimation = {
@@ -3185,8 +3208,8 @@
3185
3208
  * 获取pops所有弹窗中的最大的z-index
3186
3209
  * @param deviation
3187
3210
  */
3188
- getPopsMaxZIndex(deviation = 1) {
3189
- deviation = Number.isNaN(deviation) ? 1 : deviation;
3211
+ getPopsMaxZIndex(deviation = 10) {
3212
+ deviation = Number.isNaN(deviation) ? 10 : deviation;
3190
3213
  // 最大值 2147483647
3191
3214
  // const browserMaxZIndex = Math.pow(2, 31) - 1;
3192
3215
  // 比较值 2000000000
@@ -3201,8 +3224,7 @@
3201
3224
  const inst = instData[index];
3202
3225
  // 不对position为static和display为none的元素进行获取它们的z-index
3203
3226
  const $elList = [inst.$anim, inst.$pops, inst.$mask].filter((it) => it instanceof HTMLElement);
3204
- const nodeZIndexInfoList = popsUtils.getMaxZIndexNodeInfoFromPoint($elList);
3205
- const maxNodeZIndexInfo = nodeZIndexInfoList[0];
3227
+ const maxNodeZIndexInfo = popsUtils.getMaxZIndexNodeInfoFromPoint($elList)[0];
3206
3228
  if (maxNodeZIndexInfo) {
3207
3229
  const nodeZIndex = maxNodeZIndexInfo.zIndex;
3208
3230
  if (nodeZIndex > zIndex) {
@@ -4407,6 +4429,10 @@
4407
4429
  name: "common",
4408
4430
  css: PopsCSS.common,
4409
4431
  },
4432
+ {
4433
+ name: "skeleton",
4434
+ css: PopsCSS.skeletonCSS,
4435
+ },
4410
4436
  {
4411
4437
  name: "alertCSS",
4412
4438
  css: PopsCSS.alertCSS,
@@ -4615,6 +4641,10 @@
4615
4641
  name: "common",
4616
4642
  css: PopsCSS.common,
4617
4643
  },
4644
+ {
4645
+ name: "skeleton",
4646
+ css: PopsCSS.skeletonCSS,
4647
+ },
4618
4648
  {
4619
4649
  name: "confirmCSS",
4620
4650
  css: PopsCSS.confirmCSS,
@@ -4823,6 +4853,10 @@
4823
4853
  name: "common",
4824
4854
  css: PopsCSS.common,
4825
4855
  },
4856
+ {
4857
+ name: "skeleton",
4858
+ css: PopsCSS.skeletonCSS,
4859
+ },
4826
4860
  {
4827
4861
  name: "drawerCSS",
4828
4862
  css: PopsCSS.drawerCSS,
@@ -5032,6 +5066,7 @@
5032
5066
  <style data-model-name="index">${PopsCSS.index}</style>
5033
5067
  <style data-model-name="anim">${PopsCSS.anim}</style>
5034
5068
  <style data-model-name="common">${PopsCSS.common}</style>
5069
+ <style data-model-name="skeleton">${PopsCSS.skeletonCSS}</style>
5035
5070
  `
5036
5071
  : ""}
5037
5072
  <style data-model-name="loadingCSS">
@@ -5308,6 +5343,10 @@
5308
5343
  name: "common",
5309
5344
  css: PopsCSS.common,
5310
5345
  },
5346
+ {
5347
+ name: "skeleton",
5348
+ css: PopsCSS.skeletonCSS,
5349
+ },
5311
5350
  {
5312
5351
  name: "folderCSS",
5313
5352
  css: PopsCSS.folderCSS,
@@ -6245,6 +6284,10 @@
6245
6284
  name: "common",
6246
6285
  css: PopsCSS.common,
6247
6286
  },
6287
+ {
6288
+ name: "skeleton",
6289
+ css: PopsCSS.skeletonCSS,
6290
+ },
6248
6291
  {
6249
6292
  name: "iframeCSS",
6250
6293
  css: PopsCSS.iframeCSS,
@@ -7944,6 +7987,10 @@
7944
7987
  name: "common",
7945
7988
  css: PopsCSS.common,
7946
7989
  },
7990
+ {
7991
+ name: "skeleton",
7992
+ css: PopsCSS.skeletonCSS,
7993
+ },
7947
7994
  {
7948
7995
  name: "tooltipCSS",
7949
7996
  css: PopsCSS.tooltipCSS,
@@ -11826,6 +11873,10 @@
11826
11873
  name: "common",
11827
11874
  css: PopsCSS.common,
11828
11875
  },
11876
+ {
11877
+ name: "skeleton",
11878
+ css: PopsCSS.skeletonCSS,
11879
+ },
11829
11880
  {
11830
11881
  name: "panelCSS",
11831
11882
  css: PopsCSS.panelCSS,
@@ -12090,6 +12141,10 @@
12090
12141
  name: "common",
12091
12142
  css: PopsCSS.common,
12092
12143
  },
12144
+ {
12145
+ name: "skeleton",
12146
+ css: PopsCSS.skeletonCSS,
12147
+ },
12093
12148
  {
12094
12149
  name: "promptCSS",
12095
12150
  css: PopsCSS.promptCSS,
@@ -12315,6 +12370,10 @@
12315
12370
  name: "common",
12316
12371
  css: PopsCSS.common,
12317
12372
  },
12373
+ {
12374
+ name: "skeleton",
12375
+ css: PopsCSS.skeletonCSS,
12376
+ },
12318
12377
  {
12319
12378
  name: "rightClickMenu",
12320
12379
  css: PopsCSS.rightClickMenu,
@@ -12953,6 +13012,10 @@
12953
13012
  name: "common",
12954
13013
  css: PopsCSS.common,
12955
13014
  },
13015
+ {
13016
+ name: "skeleton",
13017
+ css: PopsCSS.skeletonCSS,
13018
+ },
12956
13019
  ]);
12957
13020
  // 添加自定义style
12958
13021
  PopsElementHandler.addStyle($shadowRoot, config.style);