@whitesev/pops 2.1.3 → 2.1.5

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 (134) hide show
  1. package/dist/index.amd.js +253 -227
  2. package/dist/index.amd.js.map +1 -1
  3. package/dist/index.cjs.js +253 -227
  4. package/dist/index.cjs.js.map +1 -1
  5. package/dist/index.esm.js +253 -227
  6. package/dist/index.esm.js.map +1 -1
  7. package/dist/index.iife.js +253 -227
  8. package/dist/index.iife.js.map +1 -1
  9. package/dist/index.system.js +253 -227
  10. package/dist/index.system.js.map +1 -1
  11. package/dist/index.umd.js +253 -227
  12. package/dist/index.umd.js.map +1 -1
  13. package/dist/types/src/GlobalConfig.d.ts +7 -2
  14. package/dist/types/src/Pops.d.ts +61 -39
  15. package/dist/types/src/{Core.d.ts → PopsCore.d.ts} +4 -3
  16. package/dist/types/src/PopsIcon.d.ts +30 -2
  17. package/dist/types/src/PopsLayer.d.ts +3 -1
  18. package/dist/types/src/components/alert/config.d.ts +1 -1
  19. package/dist/types/src/components/alert/index.d.ts +1 -1
  20. package/dist/types/src/components/alert/{indexType.d.ts → types/index.d.ts} +2 -2
  21. package/dist/types/src/components/confirm/config.d.ts +1 -1
  22. package/dist/types/src/components/confirm/index.d.ts +1 -1
  23. package/dist/types/src/components/confirm/{indexType.d.ts → types/index.d.ts} +1 -1
  24. package/dist/types/src/components/drawer/config.d.ts +1 -1
  25. package/dist/types/src/components/drawer/index.d.ts +1 -1
  26. package/dist/types/src/components/drawer/{indexType.d.ts → types/index.d.ts} +1 -1
  27. package/dist/types/src/components/folder/config.d.ts +1 -1
  28. package/dist/types/src/components/folder/index.d.ts +1 -1
  29. package/dist/types/src/components/folder/{indexType.d.ts → types/index.d.ts} +1 -1
  30. package/dist/types/src/components/iframe/config.d.ts +1 -1
  31. package/dist/types/src/components/iframe/index.d.ts +1 -1
  32. package/dist/types/src/components/iframe/{indexType.d.ts → types/index.d.ts} +2 -2
  33. package/dist/types/src/components/loading/config.d.ts +1 -1
  34. package/dist/types/src/components/loading/index.d.ts +1 -1
  35. package/dist/types/src/components/loading/{indexType.d.ts → types/index.d.ts} +1 -1
  36. package/dist/types/src/components/panel/config.d.ts +1 -1
  37. package/dist/types/src/components/panel/{PanelHandleContentDetails.d.ts → handlerComponents.d.ts} +39 -28
  38. package/dist/types/src/components/panel/index.d.ts +16 -2
  39. package/dist/types/src/components/panel/{buttonType.d.ts → types/components-button.d.ts} +3 -3
  40. package/dist/types/src/components/panel/{commonType.d.ts → types/components-common.d.ts} +2 -2
  41. package/dist/types/src/components/panel/{deepMenuType.d.ts → types/components-deepMenu.d.ts} +3 -3
  42. package/dist/types/src/components/panel/{formsType.d.ts → types/components-forms.d.ts} +2 -2
  43. package/dist/types/src/components/panel/{inputType.d.ts → types/components-input.d.ts} +1 -1
  44. package/dist/types/src/components/panel/{ownType.d.ts → types/components-own.d.ts} +1 -1
  45. package/dist/types/src/components/panel/{selectType.d.ts → types/components-select.d.ts} +3 -3
  46. package/dist/types/src/components/panel/{selectMultipleType.d.ts → types/components-selectMultiple.d.ts} +2 -2
  47. package/dist/types/src/components/panel/{sliderType.d.ts → types/components-slider.d.ts} +1 -1
  48. package/dist/types/src/components/panel/{switchType.d.ts → types/components-switch.d.ts} +1 -1
  49. package/dist/types/src/components/panel/{textareaType.d.ts → types/components-textarea.d.ts} +1 -1
  50. package/dist/types/src/components/panel/{indexType.d.ts → types/index.d.ts} +26 -12
  51. package/dist/types/src/components/prompt/config.d.ts +1 -1
  52. package/dist/types/src/components/prompt/index.d.ts +1 -1
  53. package/dist/types/src/components/prompt/{indexType.d.ts → types/index.d.ts} +1 -1
  54. package/dist/types/src/components/rightClickMenu/config.d.ts +1 -1
  55. package/dist/types/src/components/rightClickMenu/index.d.ts +2 -2
  56. package/dist/types/src/components/rightClickMenu/{indexType.d.ts → types/index.d.ts} +2 -2
  57. package/dist/types/src/components/searchSuggestion/config.d.ts +1 -1
  58. package/dist/types/src/components/searchSuggestion/index.d.ts +2 -2
  59. package/dist/types/src/components/searchSuggestion/{indexType.d.ts → types/index.d.ts} +1 -1
  60. package/dist/types/src/components/tooltip/config.d.ts +1 -1
  61. package/dist/types/src/components/tooltip/index.d.ts +2 -2
  62. package/dist/types/src/components/tooltip/{indexType.d.ts → types/index.d.ts} +1 -1
  63. package/dist/types/src/handler/PopsHandler.d.ts +8 -8
  64. package/dist/types/src/types/PopsDOMUtilsEventType.d.ts +1 -1
  65. package/dist/types/src/types/button.d.ts +3 -2
  66. package/dist/types/src/types/event.d.ts +4 -3
  67. package/dist/types/src/types/global.d.ts +4 -4
  68. package/dist/types/src/types/main.d.ts +18 -10
  69. package/dist/types/src/types/mask.d.ts +8 -0
  70. package/dist/types/src/{Config.d.ts → utils/PopsDOMUtilsEventsConfig.d.ts} +3 -0
  71. package/dist/types/src/utils/PopsInstanceUtils.d.ts +8 -8
  72. package/package.json +9 -10
  73. package/src/GlobalConfig.ts +6 -5
  74. package/src/Pops.ts +17 -17
  75. package/src/{Core.ts → PopsCore.ts} +13 -14
  76. package/src/PopsIcon.ts +34 -32
  77. package/src/PopsLayer.ts +8 -7
  78. package/src/components/alert/config.ts +1 -1
  79. package/src/components/alert/index.ts +1 -1
  80. package/src/components/alert/{indexType.ts → types/index.ts} +2 -2
  81. package/src/components/confirm/config.ts +1 -1
  82. package/src/components/confirm/index.ts +1 -1
  83. package/src/components/confirm/{indexType.ts → types/index.ts} +1 -1
  84. package/src/components/drawer/config.ts +1 -1
  85. package/src/components/drawer/index.ts +1 -1
  86. package/src/components/drawer/{indexType.ts → types/index.ts} +1 -1
  87. package/src/components/folder/config.ts +1 -1
  88. package/src/components/folder/index.ts +1 -1
  89. package/src/components/folder/{indexType.ts → types/index.ts} +1 -1
  90. package/src/components/iframe/config.ts +1 -1
  91. package/src/components/iframe/index.ts +4 -4
  92. package/src/components/iframe/{indexType.ts → types/index.ts} +2 -2
  93. package/src/components/loading/config.ts +1 -1
  94. package/src/components/loading/index.ts +1 -1
  95. package/src/components/loading/{indexType.ts → types/index.ts} +1 -1
  96. package/src/components/panel/config.ts +1 -1
  97. package/src/components/panel/{PanelHandleContentDetails.ts → handlerComponents.ts} +287 -258
  98. package/src/components/panel/index.ts +23 -5
  99. package/src/components/panel/{buttonType.ts → types/components-button.ts} +5 -4
  100. package/src/components/panel/{commonType.ts → types/components-common.ts} +2 -2
  101. package/src/components/panel/{deepMenuType.ts → types/components-deepMenu.ts} +3 -3
  102. package/src/components/panel/{formsType.ts → types/components-forms.ts} +2 -2
  103. package/src/components/panel/{inputType.ts → types/components-input.ts} +1 -1
  104. package/src/components/panel/{ownType.ts → types/components-own.ts} +1 -1
  105. package/src/components/panel/{selectType.ts → types/components-select.ts} +3 -3
  106. package/src/components/panel/{selectMultipleType.ts → types/components-selectMultiple.ts} +2 -2
  107. package/src/components/panel/{sliderType.ts → types/components-slider.ts} +1 -1
  108. package/src/components/panel/{switchType.ts → types/components-switch.ts} +1 -1
  109. package/src/components/panel/{textareaType.ts → types/components-textarea.ts} +1 -1
  110. package/src/components/panel/{indexType.ts → types/index.ts} +28 -12
  111. package/src/components/prompt/config.ts +1 -1
  112. package/src/components/prompt/index.ts +1 -1
  113. package/src/components/prompt/{indexType.ts → types/index.ts} +1 -1
  114. package/src/components/rightClickMenu/config.ts +1 -1
  115. package/src/components/rightClickMenu/index.ts +2 -2
  116. package/src/components/rightClickMenu/{indexType.ts → types/index.ts} +2 -2
  117. package/src/components/searchSuggestion/config.ts +1 -1
  118. package/src/components/searchSuggestion/index.ts +1 -1
  119. package/src/components/searchSuggestion/{indexType.ts → types/index.ts} +1 -1
  120. package/src/components/tooltip/config.ts +1 -1
  121. package/src/components/tooltip/index.ts +1 -1
  122. package/src/components/tooltip/{indexType.ts → types/index.ts} +1 -1
  123. package/src/handler/PopsElementHandler.ts +3 -3
  124. package/src/handler/PopsHandler.ts +26 -26
  125. package/src/types/PopsDOMUtilsEventType.d.ts +1 -1
  126. package/src/types/button.d.ts +3 -2
  127. package/src/types/event.d.ts +4 -3
  128. package/src/types/global.d.ts +4 -4
  129. package/src/types/main.d.ts +18 -10
  130. package/src/types/mask.d.ts +8 -0
  131. package/src/utils/PopsDOMUtils.ts +2 -2
  132. package/src/{Config.ts → utils/PopsDOMUtilsEventsConfig.ts} +3 -0
  133. package/src/utils/PopsInstanceUtils.ts +12 -12
  134. package/src/utils/PopsUtils.ts +2 -5
@@ -1,14 +1,18 @@
1
1
  var pops = (function () {
2
2
  'use strict';
3
3
 
4
+ /**
5
+ * 存储在元素属性上的事件名
6
+ */
4
7
  const SymbolEvents = Symbol("events_" + (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1));
5
8
 
6
- const PopsCoreEnv = {
9
+ const PopsCoreDefaultEnv = {
7
10
  document: document,
8
11
  window: window,
9
12
  globalThis: globalThis,
10
13
  self: self,
11
14
  };
15
+ const PopsCoreEnv = Object.assign({}, PopsCoreDefaultEnv);
12
16
  const PopsCore = {
13
17
  get document() {
14
18
  return PopsCoreEnv.document;
@@ -330,8 +334,7 @@ var pops = (function () {
330
334
  if (target === PopsCore.self) {
331
335
  return true;
332
336
  }
333
- if (typeof unsafeWindow !== "undefined" &&
334
- target === unsafeWindow) {
337
+ if (typeof unsafeWindow !== "undefined" && target === unsafeWindow) {
335
338
  return true;
336
339
  }
337
340
  if (target?.Math?.toString() !== "[object Math]") {
@@ -2229,17 +2232,18 @@ var pops = (function () {
2229
2232
  }
2230
2233
  const popsDOMUtils = new PopsDOMUtils();
2231
2234
 
2232
- const PopsLayer = {
2235
+ const PopsLayerData = {
2233
2236
  alert: [],
2234
2237
  confirm: [],
2235
- prompt: [],
2236
- loading: [],
2237
- iframe: [],
2238
- tooltip: [],
2239
2238
  drawer: [],
2240
2239
  folder: [],
2240
+ iframe: [],
2241
+ loading: [],
2241
2242
  panel: [],
2243
+ prompt: [],
2242
2244
  rightClickMenu: [],
2245
+ // 没有 searchSuggestion
2246
+ tooltip: [],
2243
2247
  };
2244
2248
 
2245
2249
  var indexCSS = "@charset \"utf-8\";\r\n.pops * {\r\n\t-webkit-box-sizing: border-box;\r\n\tbox-sizing: border-box;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\t-webkit-tap-highlight-color: transparent;\r\n\t/* 代替::-webkit-scrollbar */\r\n\tscrollbar-width: thin;\r\n}\r\n.pops {\r\n\t--pops-bg-opacity: 1;\r\n\t--pops-bd-opacity: 1;\r\n\t--pops-font-size: 16px;\r\n\tinterpolate-size: allow-keywords;\r\n}\r\n.pops-mask {\r\n\t--pops-mask-bg-opacity: 0.4;\r\n}\r\n.pops {\r\n\tbackground-color: rgb(255, 255, 255, var(--pops-bg-opacity));\r\n\tborder-radius: 4px;\r\n\tborder: 1px solid rgb(235, 238, 245, var(--pops-bd-opacity));\r\n\tfont-size: var(--pops-font-size);\r\n\tline-height: normal;\r\n\tbox-shadow: 0 0 12px rgba(0, 0, 0, 0.12);\r\n\tbox-sizing: border-box;\r\n\toverflow: hidden;\r\n\ttransition: all 0.35s;\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n}\r\n.pops-anim {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n}\r\n.pops-anim[anim=\"\"] {\r\n\ttop: unset;\r\n\tright: unset;\r\n\tbottom: unset;\r\n\tleft: unset;\r\n\twidth: unset;\r\n\theight: unset;\r\n\ttransition: none;\r\n}\r\n/* 底部图标动画和样式 */\r\n.pops i.pops-bottom-icon[is-loading=\"true\"] {\r\n\tanimation: rotating 2s linear infinite;\r\n}\r\n.pops i.pops-bottom-icon {\r\n\theight: 1em;\r\n\twidth: 1em;\r\n\tline-height: normal;\r\n\tdisplay: inline-flex;\r\n\tjustify-content: center;\r\n\talign-items: center;\r\n\tposition: relative;\r\n\tfill: currentColor;\r\n\tcolor: inherit;\r\n\tfont-size: inherit;\r\n}\r\n\r\n/* 遮罩层样式 */\r\n.pops-mask {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tborder: 0;\r\n\tborder-radius: 0;\r\n\tbackground-color: rgba(0, 0, 0, var(--pops-mask-bg-opacity));\r\n\tbox-shadow: none;\r\n\ttransition: none;\r\n}\r\n\r\n.pops-header-controls button.pops-header-control[type][data-header] {\r\n\tfloat: right;\r\n\tmargin: 0 0;\r\n\toutline: 0;\r\n\tborder: 0;\r\n\tborder-color: rgb(136, 136, 136, var(--pops-bd-opacity));\r\n\tbackground-color: transparent;\r\n\tcolor: #888;\r\n\tcursor: pointer;\r\n}\r\n.pops-header-controls button.pops-header-control[type=\"max\"],\r\n.pops-header-controls button.pops-header-control[type=\"mise\"],\r\n.pops-header-controls button.pops-header-control[type=\"min\"] {\r\n\toutline: 0 !important;\r\n\tborder: 0;\r\n\tborder-color: rgb(136, 136, 136, var(--pops-bd-opacity));\r\n\tbackground-color: transparent;\r\n\tcolor: rgb(136, 136, 136);\r\n\tcursor: pointer;\r\n\ttransition: all 0.3s ease-in-out;\r\n}\r\nbutton.pops-header-control i {\r\n\tcolor: rgb(144, 147, 153);\r\n\tfont-size: inherit;\r\n\tdisplay: inline-flex;\r\n\tjustify-content: center;\r\n\talign-items: center;\r\n\tposition: relative;\r\n\tfill: currentColor;\r\n}\r\nbutton.pops-header-control svg {\r\n\theight: 1.25em;\r\n\twidth: 1.25em;\r\n}\r\nbutton.pops-header-control {\r\n\tright: 15px;\r\n\tpadding: 0;\r\n\tborder: none;\r\n\toutline: 0;\r\n\tbackground: 0 0;\r\n\tcursor: pointer;\r\n\tposition: unset;\r\n\tline-height: normal;\r\n}\r\nbutton.pops-header-control i:hover {\r\n\tcolor: rgb(64, 158, 255);\r\n}\r\n.pops-header-controls[data-margin] button.pops-header-control {\r\n\tmargin: 0 6px;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n}\r\n.pops[type-value] .pops-header-controls {\r\n\tdisplay: flex;\r\n\tgap: 6px;\r\n}\r\n\r\n/* 标题禁止选中文字 */\r\n.pops [class^=\"pops\"][class*=\"-title\"] p[pops] {\r\n\t-webkit-user-select: none;\r\n\t-moz-user-select: none;\r\n\t-ms-user-select: none;\r\n\tuser-select: none;\r\n}\r\n\r\n/* <code> */\r\n.pops code {\r\n\tfont-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\r\n\tfont-size: 0.85em;\r\n\tcolor: #000;\r\n\tbackground-color: #f0f0f0;\r\n\tborder-radius: 3px;\r\n\tborder: 0;\r\n\tpadding: 0.2em 0;\r\n\twhite-space: normal;\r\n\tbackground: #f5f5f5;\r\n\ttext-wrap: wrap;\r\n\ttext-align: left;\r\n\tword-spacing: normal;\r\n\tword-break: normal;\r\n\tword-wrap: normal;\r\n\tline-height: 1.4;\r\n\t-moz-tab-size: 8;\r\n\t-o-tab-size: 8;\r\n\ttab-size: 8;\r\n\t-webkit-hyphens: none;\r\n\t-moz-hyphens: none;\r\n\t-ms-hyphens: none;\r\n\thyphens: none;\r\n\tdirection: ltr;\r\n}\r\n\r\n.pops code::before,\r\n.pops code::after {\r\n\tletter-spacing: -0.2em;\r\n\tcontent: \"\\00a0\";\r\n}\r\n";
@@ -2434,8 +2438,8 @@ var pops = (function () {
2434
2438
  function isVisibleNode($css) {
2435
2439
  return $css.position !== "static" && $css.display !== "none";
2436
2440
  }
2437
- Object.keys(PopsLayer).forEach((layerName) => {
2438
- let layerList = PopsLayer[layerName];
2441
+ Object.keys(PopsLayerData).forEach((layerName) => {
2442
+ let layerList = PopsLayerData[layerName];
2439
2443
  for (let index = 0; index < layerList.length; index++) {
2440
2444
  const layer = layerList[index];
2441
2445
  let nodeStyle = window.getComputedStyle(layer.animElement);
@@ -2983,8 +2987,7 @@ var pops = (function () {
2983
2987
  let style = configValue == null
2984
2988
  ? ""
2985
2989
  : typeof configValue === "function"
2986
- ? // @ts-ignore
2987
- configValue()
2990
+ ? configValue()
2988
2991
  : configValue;
2989
2992
  if (typeof style === "string") {
2990
2993
  result.style = style;
@@ -2998,7 +3001,7 @@ var pops = (function () {
2998
3001
  ? configValue()
2999
3002
  : configValue;
3000
3003
  if (typeof zIndex === "string") {
3001
- let newIndex = (zIndex = parseInt(zIndex));
3004
+ let newIndex = (zIndex = Number(zIndex));
3002
3005
  if (!isNaN(newIndex)) {
3003
3006
  result.zIndex = newIndex;
3004
3007
  }
@@ -3079,37 +3082,38 @@ var pops = (function () {
3079
3082
 
3080
3083
  var SVG_arrowLeft = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1024 1024\">\r\n\t<path\r\n\t\td=\"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z\"></path>\r\n</svg>\r\n";
3081
3084
 
3085
+ const PopsIconData = {
3086
+ min: SVG_min,
3087
+ mise: SVG_mise,
3088
+ max: SVG_max,
3089
+ close: SVG_close,
3090
+ edit: SVG_edit,
3091
+ share: SVG_share,
3092
+ delete: SVG_delete,
3093
+ search: SVG_search,
3094
+ upload: SVG_upload,
3095
+ loading: SVG_loading,
3096
+ next: SVG_next,
3097
+ prev: SVG_prev,
3098
+ eleme: SVG_eleme,
3099
+ elemePlus: SVG_elemePlus,
3100
+ chromeFilled: SVG_chromeFilled,
3101
+ cpu: SVG_cpu,
3102
+ videoPlay: SVG_videoPlay,
3103
+ videoPause: SVG_videoPause,
3104
+ headset: SVG_headset,
3105
+ monitor: SVG_monitor,
3106
+ documentCopy: SVG_documentCopy,
3107
+ picture: SVG_picture,
3108
+ circleClose: SVG_circleClose,
3109
+ view: SVG_view,
3110
+ hide: SVG_hide,
3111
+ keyboard: SVG_keyboard,
3112
+ arrowRight: SVG_arrowRight,
3113
+ arrowLeft: SVG_arrowLeft,
3114
+ };
3082
3115
  const PopsIcon = {
3083
- $data: {
3084
- min: SVG_min,
3085
- mise: SVG_mise,
3086
- max: SVG_max,
3087
- close: SVG_close,
3088
- edit: SVG_edit,
3089
- share: SVG_share,
3090
- delete: SVG_delete,
3091
- search: SVG_search,
3092
- upload: SVG_upload,
3093
- loading: SVG_loading,
3094
- next: SVG_next,
3095
- prev: SVG_prev,
3096
- eleme: SVG_eleme,
3097
- elemePlus: SVG_elemePlus,
3098
- chromeFilled: SVG_chromeFilled,
3099
- cpu: SVG_cpu,
3100
- videoPlay: SVG_videoPlay,
3101
- videoPause: SVG_videoPause,
3102
- headset: SVG_headset,
3103
- monitor: SVG_monitor,
3104
- documentCopy: SVG_documentCopy,
3105
- picture: SVG_picture,
3106
- circleClose: SVG_circleClose,
3107
- view: SVG_view,
3108
- hide: SVG_hide,
3109
- keyboard: SVG_keyboard,
3110
- arrowRight: SVG_arrowRight,
3111
- arrowLeft: SVG_arrowLeft,
3112
- },
3116
+ $data: PopsIconData,
3113
3117
  /**
3114
3118
  * 判断是否存在某个icon
3115
3119
  * @param iconName 图标名
@@ -3473,7 +3477,7 @@ var pops = (function () {
3473
3477
  function clickEvent(event) {
3474
3478
  popsDOMUtils.preventEvent(event);
3475
3479
  // 获取该类型实例存储列表
3476
- let targetLayer = PopsLayer[details.type];
3480
+ let targetLayer = PopsLayerData[details.type];
3477
3481
  function originalRun() {
3478
3482
  if (details.config.mask.clickEvent.toClose) {
3479
3483
  /* 关闭 */
@@ -3660,13 +3664,13 @@ var pops = (function () {
3660
3664
  mode: mode,
3661
3665
  guid: guid,
3662
3666
  close() {
3663
- return PopsInstanceUtils.close(mode, PopsLayer[mode], guid, config, animElement);
3667
+ return PopsInstanceUtils.close(mode, PopsLayerData[mode], guid, config, animElement);
3664
3668
  },
3665
3669
  hide() {
3666
- return PopsInstanceUtils.hide(mode, PopsLayer[mode], guid, config, animElement, maskElement);
3670
+ return PopsInstanceUtils.hide(mode, PopsLayerData[mode], guid, config, animElement, maskElement);
3667
3671
  },
3668
3672
  show() {
3669
- return PopsInstanceUtils.show(mode, PopsLayer[mode], guid, config, animElement, maskElement);
3673
+ return PopsInstanceUtils.show(mode, PopsLayerData[mode], guid, config, animElement, maskElement);
3670
3674
  },
3671
3675
  };
3672
3676
  },
@@ -3688,13 +3692,13 @@ var pops = (function () {
3688
3692
  mode: mode,
3689
3693
  guid: guid,
3690
3694
  close() {
3691
- return PopsInstanceUtils.close(mode, PopsLayer[mode], guid, config, animElement);
3695
+ return PopsInstanceUtils.close(mode, PopsLayerData[mode], guid, config, animElement);
3692
3696
  },
3693
3697
  hide() {
3694
- return PopsInstanceUtils.hide(mode, PopsLayer[mode], guid, config, animElement, maskElement);
3698
+ return PopsInstanceUtils.hide(mode, PopsLayerData[mode], guid, config, animElement, maskElement);
3695
3699
  },
3696
3700
  show() {
3697
- return PopsInstanceUtils.show(mode, PopsLayer[mode], guid, config, animElement, maskElement);
3701
+ return PopsInstanceUtils.show(mode, PopsLayerData[mode], guid, config, animElement, maskElement);
3698
3702
  },
3699
3703
  };
3700
3704
  },
@@ -3806,20 +3810,20 @@ var pops = (function () {
3806
3810
  if (type === "loading" ||
3807
3811
  type === "tooltip" ||
3808
3812
  type === "rightClickMenu") {
3809
- let layer = PopsLayer[type];
3813
+ let layer = PopsLayerData[type];
3810
3814
  if (layer) {
3811
3815
  PopsInstanceUtils.removeInstance([layer], "", true);
3812
3816
  }
3813
3817
  }
3814
3818
  else {
3815
3819
  PopsInstanceUtils.removeInstance([
3816
- PopsLayer.alert,
3817
- PopsLayer.confirm,
3818
- PopsLayer.prompt,
3819
- PopsLayer.iframe,
3820
- PopsLayer.drawer,
3821
- PopsLayer.folder,
3822
- PopsLayer.panel,
3820
+ PopsLayerData.alert,
3821
+ PopsLayerData.confirm,
3822
+ PopsLayerData.prompt,
3823
+ PopsLayerData.iframe,
3824
+ PopsLayerData.drawer,
3825
+ PopsLayerData.folder,
3826
+ PopsLayerData.panel,
3823
3827
  ], "", true);
3824
3828
  }
3825
3829
  }
@@ -3840,7 +3844,7 @@ var pops = (function () {
3840
3844
  * @param value
3841
3845
  */
3842
3846
  handlePush(type, value) {
3843
- PopsLayer[type].push(value);
3847
+ PopsLayerData[type].push(value);
3844
3848
  },
3845
3849
  };
3846
3850
 
@@ -4762,7 +4766,7 @@ var pops = (function () {
4762
4766
  popsDOMUtils.on(headerCloseBtnElement, "click", (event) => {
4763
4767
  event.preventDefault();
4764
4768
  event.stopPropagation();
4765
- PopsInstanceUtils.removeInstance([PopsLayer.iframe], guid, false);
4769
+ PopsInstanceUtils.removeInstance([PopsLayerData.iframe], guid, false);
4766
4770
  if (typeof config?.btn?.close?.callback === "function") {
4767
4771
  config.btn.close.callback(eventDetails, event);
4768
4772
  }
@@ -7060,7 +7064,10 @@ var pops = (function () {
7060
7064
  },
7061
7065
  };
7062
7066
 
7063
- const PanelHandleContentDetails = () => {
7067
+ /**
7068
+ * 处理组件(把组件配置转为组件元素)
7069
+ */
7070
+ const PanelHandlerComponents = () => {
7064
7071
  return {
7065
7072
  /**
7066
7073
  * 左侧的ul容器
@@ -7078,6 +7085,8 @@ var pops = (function () {
7078
7085
  * 元素
7079
7086
  */
7080
7087
  $el: {
7088
+ /** pops主元素 */
7089
+ $pops: null,
7081
7090
  /** 内容 */
7082
7091
  $content: null,
7083
7092
  /** 左侧容器 */
@@ -7090,8 +7099,6 @@ var pops = (function () {
7090
7099
  * @param details
7091
7100
  */
7092
7101
  init(details) {
7093
- // @ts-ignore
7094
- this.$el = null;
7095
7102
  this.$el = {
7096
7103
  ...details.$el,
7097
7104
  };
@@ -7154,11 +7161,12 @@ var pops = (function () {
7154
7161
  * 清空container容器的元素
7155
7162
  */
7156
7163
  clearContainer() {
7164
+ Reflect.deleteProperty(this.$el.$contentSectionContainer, "__formConfig__");
7157
7165
  PopsSafeUtils.setSafeHTML(this.sectionContainerHeaderULElement, "");
7158
7166
  PopsSafeUtils.setSafeHTML(this.sectionContainerULElement, "");
7159
7167
  this.$el.$content
7160
7168
  ?.querySelectorAll("section.pops-panel-deepMenu-container")
7161
- .forEach((ele) => ele.remove());
7169
+ .forEach(($el) => $el.remove());
7162
7170
  },
7163
7171
  /**
7164
7172
  * 清空左侧容器已访问记录
@@ -7166,8 +7174,8 @@ var pops = (function () {
7166
7174
  clearAsideItemIsVisited() {
7167
7175
  this.$el.$contentAside
7168
7176
  .querySelectorAll(".pops-is-visited")
7169
- .forEach((element) => {
7170
- popsDOMUtils.removeClassName(element, "pops-is-visited");
7177
+ .forEach(($el) => {
7178
+ popsDOMUtils.removeClassName($el, "pops-is-visited");
7171
7179
  });
7172
7180
  },
7173
7181
  /**
@@ -7244,34 +7252,33 @@ var pops = (function () {
7244
7252
  * @param asideConfig
7245
7253
  */
7246
7254
  createAsideItem(asideConfig) {
7247
- let liElement = document.createElement("li");
7248
- liElement.id = asideConfig.id;
7249
- // @ts-ignore
7250
- liElement["__forms__"] = asideConfig.forms;
7251
- PopsSafeUtils.setSafeHTML(liElement, asideConfig.title);
7255
+ let $li = document.createElement("li");
7256
+ $li.id = asideConfig.id;
7257
+ Reflect.set($li, "__forms__", asideConfig.forms);
7258
+ PopsSafeUtils.setSafeHTML($li, asideConfig.title);
7252
7259
  /* 处理className */
7253
- this.setElementClassName(liElement, asideConfig.className);
7254
- this.setElementAttributes(liElement, asideConfig.attributes);
7255
- this.setElementProps(liElement, asideConfig.props);
7256
- return liElement;
7260
+ this.setElementClassName($li, asideConfig.className);
7261
+ this.setElementAttributes($li, asideConfig.attributes);
7262
+ this.setElementProps($li, asideConfig.props);
7263
+ return $li;
7257
7264
  },
7258
7265
  /**
7259
- * 创建中间容器的元素<li>
7260
7266
  * type ==> switch
7267
+ * 创建中间容器的元素<li>
7261
7268
  * @param formConfig
7262
7269
  */
7263
7270
  createSectionContainerItem_switch(formConfig) {
7264
- let liElement = document.createElement("li");
7265
- liElement["__formConfig__"] = formConfig;
7266
- this.setElementClassName(liElement, formConfig.className);
7267
- this.setElementAttributes(liElement, formConfig.attributes);
7268
- this.setElementProps(liElement, formConfig.props);
7271
+ let $li = document.createElement("li");
7272
+ Reflect.set($li, "__formConfig__", formConfig);
7273
+ this.setElementClassName($li, formConfig.className);
7274
+ this.setElementAttributes($li, formConfig.attributes);
7275
+ this.setElementProps($li, formConfig.props);
7269
7276
  /* 左边底部的描述的文字 */
7270
7277
  let leftDescriptionText = "";
7271
7278
  if (Boolean(formConfig.description)) {
7272
7279
  leftDescriptionText = /*html*/ `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
7273
7280
  }
7274
- PopsSafeUtils.setSafeHTML(liElement,
7281
+ PopsSafeUtils.setSafeHTML($li,
7275
7282
  /*html*/ `
7276
7283
  <div class="pops-panel-item-left-text">
7277
7284
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -7288,9 +7295,9 @@ var pops = (function () {
7288
7295
  value: Boolean(formConfig.getValue()),
7289
7296
  },
7290
7297
  $ele: {
7291
- switch: liElement.querySelector(".pops-panel-switch"),
7292
- input: liElement.querySelector(".pops-panel-switch__input"),
7293
- core: liElement.querySelector(".pops-panel-switch__core"),
7298
+ switch: $li.querySelector(".pops-panel-switch"),
7299
+ input: $li.querySelector(".pops-panel-switch__input"),
7300
+ core: $li.querySelector(".pops-panel-switch__core"),
7294
7301
  },
7295
7302
  init() {
7296
7303
  this.setStatus(this.$data.value);
@@ -7352,26 +7359,26 @@ var pops = (function () {
7352
7359
  },
7353
7360
  };
7354
7361
  PopsPanelSwitch.init();
7355
- liElement["data-switch"] = PopsPanelSwitch;
7356
- return liElement;
7362
+ Reflect.set($li, "data-switch", PopsPanelSwitch);
7363
+ return $li;
7357
7364
  },
7358
7365
  /**
7359
- * 获取中间容器的元素<li>
7360
7366
  * type ==> slider
7367
+ * 获取中间容器的元素<li>
7361
7368
  * @param formConfig
7362
7369
  */
7363
7370
  createSectionContainerItem_slider(formConfig) {
7364
- let liElement = document.createElement("li");
7365
- liElement["__formConfig__"] = formConfig;
7366
- this.setElementClassName(liElement, formConfig.className);
7367
- this.setElementAttributes(liElement, formConfig.attributes);
7368
- this.setElementProps(liElement, formConfig.props);
7371
+ let $li = document.createElement("li");
7372
+ Reflect.set($li, "__formConfig__", formConfig);
7373
+ this.setElementClassName($li, formConfig.className);
7374
+ this.setElementAttributes($li, formConfig.attributes);
7375
+ this.setElementProps($li, formConfig.props);
7369
7376
  /* 左边底部的描述的文字 */
7370
7377
  let leftDescriptionText = "";
7371
7378
  if (Boolean(formConfig.description)) {
7372
7379
  leftDescriptionText = `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
7373
7380
  }
7374
- PopsSafeUtils.setSafeHTML(liElement,
7381
+ PopsSafeUtils.setSafeHTML($li,
7375
7382
  /*html*/ `
7376
7383
  <div class="pops-panel-item-left-text">
7377
7384
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -7379,11 +7386,11 @@ var pops = (function () {
7379
7386
  <input type="range" min="${formConfig.min}" max="${formConfig.max}">
7380
7387
  </div>
7381
7388
  `);
7382
- let rangeInputElement = liElement.querySelector(".pops-panel-slider input[type=range]");
7389
+ let $rangeInput = $li.querySelector(".pops-panel-slider input[type=range]");
7383
7390
  if (formConfig.step) {
7384
- rangeInputElement.setAttribute("step", formConfig.step.toString());
7391
+ $rangeInput.setAttribute("step", formConfig.step.toString());
7385
7392
  }
7386
- rangeInputElement.value = formConfig.getValue().toString();
7393
+ $rangeInput.value = formConfig.getValue().toString();
7387
7394
  /**
7388
7395
  * 获取提示的内容
7389
7396
  * @param value
@@ -7397,9 +7404,9 @@ var pops = (function () {
7397
7404
  }
7398
7405
  };
7399
7406
  let tooltip = PopsTooltip.init({
7400
- target: rangeInputElement.parentElement,
7407
+ target: $rangeInput.parentElement,
7401
7408
  content: () => {
7402
- return getToolTipContent(rangeInputElement.value);
7409
+ return getToolTipContent($rangeInput.value);
7403
7410
  },
7404
7411
  zIndex: () => {
7405
7412
  return PopsInstanceUtils.getPopsMaxZIndex().zIndex;
@@ -7410,32 +7417,31 @@ var pops = (function () {
7410
7417
  position: "top",
7411
7418
  arrowDistance: 10,
7412
7419
  });
7413
- popsDOMUtils.on(rangeInputElement, ["input", "propertychange"], void 0, function (event) {
7414
- tooltip.toolTip.changeContent(getToolTipContent(rangeInputElement.value));
7420
+ popsDOMUtils.on($rangeInput, ["input", "propertychange"], void 0, function (event) {
7421
+ tooltip.toolTip.changeContent(getToolTipContent($rangeInput.value));
7415
7422
  if (typeof formConfig.callback === "function") {
7416
- formConfig.callback(event, event.target.value);
7423
+ formConfig.callback(event, $rangeInput.valueAsNumber);
7417
7424
  }
7418
7425
  });
7419
- return liElement;
7426
+ return $li;
7420
7427
  },
7421
7428
  /**
7422
- * 获取中间容器的元素<li>
7423
7429
  * type ==> slider
7430
+ * 获取中间容器的元素<li>
7424
7431
  * @param formConfig
7425
7432
  */
7426
7433
  createSectionContainerItem_slider_new(formConfig) {
7427
- let liElement = document.createElement("li");
7428
- // @ts-ignore
7429
- liElement["__formConfig__"] = formConfig;
7430
- this.setElementClassName(liElement, formConfig.className);
7431
- this.setElementAttributes(liElement, formConfig.attributes);
7432
- this.setElementProps(liElement, formConfig.props);
7434
+ let $li = document.createElement("li");
7435
+ Reflect.set($li, "__formConfig__", formConfig);
7436
+ this.setElementClassName($li, formConfig.className);
7437
+ this.setElementAttributes($li, formConfig.attributes);
7438
+ this.setElementProps($li, formConfig.props);
7433
7439
  /* 左边底部的描述的文字 */
7434
7440
  let leftDescriptionText = "";
7435
7441
  if (Boolean(formConfig.description)) {
7436
7442
  leftDescriptionText = /*html*/ `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
7437
7443
  }
7438
- PopsSafeUtils.setSafeHTML(liElement,
7444
+ PopsSafeUtils.setSafeHTML($li,
7439
7445
  /*html*/ `
7440
7446
  <div class="pops-panel-item-left-text" style="flex: 1;">
7441
7447
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -7510,11 +7516,11 @@ var pops = (function () {
7510
7516
  tooltip: null,
7511
7517
  },
7512
7518
  $ele: {
7513
- slider: liElement.querySelector(".pops-slider"),
7514
- runAway: liElement.querySelector(".pops-slider__runway"),
7515
- bar: liElement.querySelector(".pops-slider__bar"),
7516
- buttonWrapper: liElement.querySelector(".pops-slider__button-wrapper"),
7517
- button: liElement.querySelector(".pops-slider__button"),
7519
+ slider: $li.querySelector(".pops-slider"),
7520
+ runAway: $li.querySelector(".pops-slider__runway"),
7521
+ bar: $li.querySelector(".pops-slider__bar"),
7522
+ buttonWrapper: $li.querySelector(".pops-slider__button-wrapper"),
7523
+ button: $li.querySelector(".pops-slider__button"),
7518
7524
  },
7519
7525
  $interval: {
7520
7526
  isCheck: false,
@@ -7580,14 +7586,10 @@ var pops = (function () {
7580
7586
  this.$ele.slider.setAttribute("data-max", this.max.toString());
7581
7587
  this.$ele.slider.setAttribute("data-value", this.value.toString());
7582
7588
  this.$ele.slider.setAttribute("data-step", this.step.toString());
7583
- // @ts-ignore
7584
- this.$ele.slider["data-min"] = this.min;
7585
- // @ts-ignore
7586
- this.$ele.slider["data-max"] = this.max;
7587
- // @ts-ignore
7588
- this.$ele.slider["data-value"] = this.value;
7589
- // @ts-ignore
7590
- this.$ele.slider["data-step"] = this.step;
7589
+ Reflect.set(this.$ele.slider, "data-min", this.min);
7590
+ Reflect.set(this.$ele.slider, "data-max", this.max);
7591
+ Reflect.set(this.$ele.slider, "data-value", this.value);
7592
+ Reflect.set(this.$ele.slider, "data-step", this.step);
7591
7593
  },
7592
7594
  /**
7593
7595
  * 初始化滑块的总长度的数据(px)
@@ -7607,7 +7609,7 @@ var pops = (function () {
7607
7609
  let widthPx = 0;
7608
7610
  for (let stepValue = this.min; stepValue <= this.max; stepValue += this.step) {
7609
7611
  let value = this.formatValue(stepValue);
7610
- let info = {};
7612
+ let info;
7611
7613
  if (value === this.min) {
7612
7614
  /* 起始 */
7613
7615
  info = {
@@ -7650,7 +7652,7 @@ var pops = (function () {
7650
7652
  let widthPx = 0;
7651
7653
  for (let stepValue = this.min; stepValue <= this.max; stepValue = PopsMathFloatUtils.add(stepValue, this.step)) {
7652
7654
  let value = this.formatValue(stepValue);
7653
- let info = {};
7655
+ let info;
7654
7656
  if (value === this.min) {
7655
7657
  /* 起始 */
7656
7658
  info = {
@@ -7808,7 +7810,7 @@ var pops = (function () {
7808
7810
  event.target !== this.$ele.bar) {
7809
7811
  return;
7810
7812
  }
7811
- let clickX = parseFloat(event.offsetX);
7813
+ let clickX = parseFloat(event.offsetX.toString());
7812
7814
  this.dragStartCallBack();
7813
7815
  this.dragMoveCallBack(event, clickX, this.value);
7814
7816
  this.dragEndCallBack(clickX);
@@ -7961,7 +7963,7 @@ var pops = (function () {
7961
7963
  return formConfig.getToolTipContent(PopsPanelSlider.value);
7962
7964
  }
7963
7965
  else {
7964
- return PopsPanelSlider.value;
7966
+ return PopsPanelSlider.value.toString();
7965
7967
  }
7966
7968
  }
7967
7969
  let tooltip = PopsTooltip.init({
@@ -8005,20 +8007,20 @@ var pops = (function () {
8005
8007
  },
8006
8008
  };
8007
8009
  PopsPanelSlider.init();
8008
- liElement["data-slider"] = PopsPanelSlider;
8009
- return liElement;
8010
+ Reflect.set($li, "data-slider", PopsPanelSlider);
8011
+ return $li;
8010
8012
  },
8011
8013
  /**
8012
- * 获取中间容器的元素<li>
8013
8014
  * type ==> input
8015
+ * 获取中间容器的元素<li>
8014
8016
  * @param formConfig
8015
8017
  */
8016
8018
  createSectionContainerItem_input(formConfig) {
8017
- let liElement = document.createElement("li");
8018
- liElement["__formConfig__"] = formConfig;
8019
- this.setElementClassName(liElement, formConfig.className);
8020
- this.setElementAttributes(liElement, formConfig.attributes);
8021
- this.setElementProps(liElement, formConfig.props);
8019
+ let $li = document.createElement("li");
8020
+ Reflect.set($li, "__formConfig__", formConfig);
8021
+ this.setElementClassName($li, formConfig.className);
8022
+ this.setElementAttributes($li, formConfig.attributes);
8023
+ this.setElementProps($li, formConfig.props);
8022
8024
  let inputType = "text";
8023
8025
  if (formConfig.isPassword) {
8024
8026
  inputType = "password";
@@ -8031,7 +8033,7 @@ var pops = (function () {
8031
8033
  if (Boolean(formConfig.description)) {
8032
8034
  leftDescriptionText = `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
8033
8035
  }
8034
- PopsSafeUtils.setSafeHTML(liElement,
8036
+ PopsSafeUtils.setSafeHTML($li,
8035
8037
  /*html*/ `
8036
8038
  <div class="pops-panel-item-left-text">
8037
8039
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -8042,8 +8044,8 @@ var pops = (function () {
8042
8044
  const PopsPanelInput = {
8043
8045
  [Symbol.toStringTag]: "PopsPanelInput",
8044
8046
  $ele: {
8045
- panelInput: liElement.querySelector(".pops-panel-input"),
8046
- input: liElement.querySelector("input"),
8047
+ panelInput: $li.querySelector(".pops-panel-input"),
8048
+ input: $li.querySelector("input"),
8047
8049
  inputSpanIcon: document.createElement("span"),
8048
8050
  inputSpanIconInner: null,
8049
8051
  icon: null,
@@ -8072,7 +8074,7 @@ var pops = (function () {
8072
8074
  this.disable();
8073
8075
  }
8074
8076
  if (typeof formConfig.handlerCallBack === "function") {
8075
- formConfig.handlerCallBack(liElement, this.$ele.input);
8077
+ formConfig.handlerCallBack($li, this.$ele.input);
8076
8078
  }
8077
8079
  },
8078
8080
  /**
@@ -8207,26 +8209,26 @@ var pops = (function () {
8207
8209
  },
8208
8210
  };
8209
8211
  PopsPanelInput.init();
8210
- liElement["data-input"] = PopsPanelInput;
8211
- return liElement;
8212
+ Reflect.set($li, "data-input", PopsPanelInput);
8213
+ return $li;
8212
8214
  },
8213
8215
  /**
8214
- * 获取中间容器的元素<li>
8215
8216
  * type ==> textarea
8217
+ * 获取中间容器的元素<li>
8216
8218
  * @param formConfig
8217
8219
  */
8218
8220
  createSectionContainerItem_textarea(formConfig) {
8219
- let liElement = document.createElement("li");
8220
- liElement["__formConfig__"] = formConfig;
8221
- this.setElementClassName(liElement, formConfig.className);
8222
- this.setElementAttributes(liElement, formConfig.attributes);
8223
- this.setElementProps(liElement, formConfig.props);
8221
+ let $li = document.createElement("li");
8222
+ Reflect.set($li, "__formConfig__", formConfig);
8223
+ this.setElementClassName($li, formConfig.className);
8224
+ this.setElementAttributes($li, formConfig.attributes);
8225
+ this.setElementProps($li, formConfig.props);
8224
8226
  /* 左边底部的描述的文字 */
8225
8227
  let leftDescriptionText = "";
8226
8228
  if (Boolean(formConfig.description)) {
8227
8229
  leftDescriptionText = `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
8228
8230
  }
8229
- PopsSafeUtils.setSafeHTML(liElement,
8231
+ PopsSafeUtils.setSafeHTML($li,
8230
8232
  /*html*/ `
8231
8233
  <div class="pops-panel-item-left-text">
8232
8234
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -8237,8 +8239,8 @@ var pops = (function () {
8237
8239
  const PopsPanelTextArea = {
8238
8240
  [Symbol.toStringTag]: "PopsPanelTextArea",
8239
8241
  $ele: {
8240
- panelTextarea: liElement.querySelector(".pops-panel-textarea"),
8241
- textarea: liElement.querySelector(".pops-panel-textarea textarea"),
8242
+ panelTextarea: $li.querySelector(".pops-panel-textarea"),
8243
+ textarea: $li.querySelector(".pops-panel-textarea textarea"),
8242
8244
  },
8243
8245
  $data: {
8244
8246
  value: formConfig.getValue(),
@@ -8270,35 +8272,36 @@ var pops = (function () {
8270
8272
  */
8271
8273
  setChangeEvent() {
8272
8274
  popsDOMUtils.on(this.$ele.textarea, ["input", "propertychange"], void 0, (event) => {
8273
- this.$data.value = event.target.value;
8275
+ let value = this.$ele.textarea.value;
8276
+ this.$data.value = value;
8274
8277
  if (typeof formConfig.callback === "function") {
8275
- formConfig.callback(event, event.target.value);
8278
+ formConfig.callback(event, value);
8276
8279
  }
8277
8280
  });
8278
8281
  },
8279
8282
  };
8280
8283
  PopsPanelTextArea.init();
8281
- liElement["data-textarea"] = PopsPanelTextArea;
8282
- return liElement;
8284
+ Reflect.set($li, "data-textarea", PopsPanelTextArea);
8285
+ return $li;
8283
8286
  },
8284
8287
  /**
8285
- * 获取中间容器的元素<li>
8286
8288
  * type ==> select
8289
+ * 获取中间容器的元素<li>
8287
8290
  * @param formConfig
8288
8291
  */
8289
8292
  createSectionContainerItem_select(formConfig) {
8290
8293
  const that = this;
8291
- let liElement = document.createElement("li");
8292
- liElement["__formConfig__"] = formConfig;
8293
- this.setElementClassName(liElement, formConfig.className);
8294
- this.setElementAttributes(liElement, formConfig.attributes);
8295
- this.setElementProps(liElement, formConfig.props);
8294
+ let $li = document.createElement("li");
8295
+ Reflect.set($li, "__formConfig__", formConfig);
8296
+ this.setElementClassName($li, formConfig.className);
8297
+ this.setElementAttributes($li, formConfig.attributes);
8298
+ this.setElementProps($li, formConfig.props);
8296
8299
  /* 左边底部的描述的文字 */
8297
8300
  let leftDescriptionText = "";
8298
8301
  if (Boolean(formConfig.description)) {
8299
8302
  leftDescriptionText = /*html*/ `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
8300
8303
  }
8301
- PopsSafeUtils.setSafeHTML(liElement,
8304
+ PopsSafeUtils.setSafeHTML($li,
8302
8305
  /*html*/ `
8303
8306
  <div class="pops-panel-item-left-text">
8304
8307
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -8309,8 +8312,8 @@ var pops = (function () {
8309
8312
  const PopsPanelSelect = {
8310
8313
  [Symbol.toStringTag]: "PopsPanelSelect",
8311
8314
  $ele: {
8312
- panelSelect: liElement.querySelector(".pops-panel-select"),
8313
- select: liElement.querySelector(".pops-panel-select select"),
8315
+ panelSelect: $li.querySelector(".pops-panel-select"),
8316
+ select: $li.querySelector(".pops-panel-select select"),
8314
8317
  },
8315
8318
  $eleKey: {
8316
8319
  disable: "__disable__",
@@ -8430,7 +8433,7 @@ var pops = (function () {
8430
8433
  */
8431
8434
  setChangeEvent() {
8432
8435
  popsDOMUtils.on(this.$ele.select, "change", void 0, (event) => {
8433
- let $isSelectedElement = event.target[event.target.selectedIndex];
8436
+ let $isSelectedElement = this.$ele.select[this.$ele.select.selectedIndex];
8434
8437
  let selectInfo = this.getSelectOptionInfo($isSelectedElement);
8435
8438
  this.setSelectOptionsDisableStatus();
8436
8439
  if (typeof formConfig.callback === "function") {
@@ -8443,9 +8446,9 @@ var pops = (function () {
8443
8446
  /* 如果成功创建,加入到中间容器中 */
8444
8447
  let childUListClassName = "pops-panel-select-child-forms";
8445
8448
  // 移除旧的元素
8446
- while (liElement.nextElementSibling) {
8447
- if (liElement.nextElementSibling.classList.contains(childUListClassName)) {
8448
- liElement.nextElementSibling.remove();
8449
+ while ($li.nextElementSibling) {
8450
+ if ($li.nextElementSibling.classList.contains(childUListClassName)) {
8451
+ $li.nextElementSibling.remove();
8449
8452
  }
8450
8453
  else {
8451
8454
  break;
@@ -8453,7 +8456,7 @@ var pops = (function () {
8453
8456
  }
8454
8457
  let $childUList = document.createElement("ul");
8455
8458
  $childUList.className = childUListClassName;
8456
- popsDOMUtils.after(liElement, $childUList);
8459
+ popsDOMUtils.after($li, $childUList);
8457
8460
  that.uListContainerAddItem(formConfig, {
8458
8461
  ulElement: $childUList,
8459
8462
  });
@@ -8473,26 +8476,26 @@ var pops = (function () {
8473
8476
  },
8474
8477
  };
8475
8478
  PopsPanelSelect.init();
8476
- Reflect.set(liElement, "data-select", PopsPanelSelect);
8477
- return liElement;
8479
+ Reflect.set($li, "data-select", PopsPanelSelect);
8480
+ return $li;
8478
8481
  },
8479
8482
  /**
8480
- * 获取中间容器的元素<li>
8481
8483
  * type ==> select-multiple
8484
+ * 获取中间容器的元素<li>
8482
8485
  * @param formConfig
8483
8486
  */
8484
8487
  createSectionContainerItem_select_multiple_new(formConfig) {
8485
- let liElement = document.createElement("li");
8486
- Reflect.set(liElement, "__formConfig__", formConfig);
8487
- this.setElementClassName(liElement, formConfig.className);
8488
- this.setElementAttributes(liElement, formConfig.attributes);
8489
- this.setElementProps(liElement, formConfig.props);
8488
+ let $li = document.createElement("li");
8489
+ Reflect.set($li, "__formConfig__", formConfig);
8490
+ this.setElementClassName($li, formConfig.className);
8491
+ this.setElementAttributes($li, formConfig.attributes);
8492
+ this.setElementProps($li, formConfig.props);
8490
8493
  /* 左边底部的描述的文字 */
8491
8494
  let leftDescriptionText = "";
8492
8495
  if (Boolean(formConfig.description)) {
8493
8496
  leftDescriptionText = /*html*/ `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
8494
8497
  }
8495
- PopsSafeUtils.setSafeHTML(liElement,
8498
+ PopsSafeUtils.setSafeHTML($li,
8496
8499
  /*html*/ `
8497
8500
  <div class="pops-panel-item-left-text">
8498
8501
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -8567,15 +8570,14 @@ var pops = (function () {
8567
8570
  },
8568
8571
  /** 初始化$el变量 */
8569
8572
  inintEl() {
8570
- this.$el.$container = liElement.querySelector(".pops-panel-select-multiple");
8571
- this.$el.$wrapper = liElement.querySelector(".el-select__wrapper");
8572
- this.$el.$section = liElement.querySelector(".el-select__selection");
8573
- this.$el.$selectedInputWrapper = liElement.querySelector(".el-select__selected-item.el-select__input-wrapper");
8574
- this.$el.$selectedPlaceHolderWrapper =
8575
- liElement.querySelector(".el-select__selected-item.el-select__placeholder");
8573
+ this.$el.$container = $li.querySelector(".pops-panel-select-multiple");
8574
+ this.$el.$wrapper = $li.querySelector(".el-select__wrapper");
8575
+ this.$el.$section = $li.querySelector(".el-select__selection");
8576
+ this.$el.$selectedInputWrapper = $li.querySelector(".el-select__selected-item.el-select__input-wrapper");
8577
+ this.$el.$selectedPlaceHolderWrapper = $li.querySelector(".el-select__selected-item.el-select__placeholder");
8576
8578
  this.$el.$suffix =
8577
- liElement.querySelector(".el-select__suffix");
8578
- this.$el.$suffixIcon = liElement.querySelector(".el-select__suffix .el-icon");
8579
+ $li.querySelector(".el-select__suffix");
8580
+ this.$el.$suffixIcon = $li.querySelector(".el-select__suffix .el-icon");
8579
8581
  // 先把手动输入框隐藏
8580
8582
  this.hideInputWrapper();
8581
8583
  },
@@ -9133,26 +9135,26 @@ var pops = (function () {
9133
9135
  },
9134
9136
  };
9135
9137
  PopsPanelSelectMultiple.init();
9136
- Reflect.set(liElement, "data-select-multiple", PopsPanelSelectMultiple);
9137
- return liElement;
9138
+ Reflect.set($li, "data-select-multiple", PopsPanelSelectMultiple);
9139
+ return $li;
9138
9140
  },
9139
9141
  /**
9140
- * 获取中间容器的元素<li>
9141
9142
  * type ==> button
9143
+ * 获取中间容器的元素<li>
9142
9144
  * @param formConfig
9143
9145
  */
9144
9146
  createSectionContainerItem_button(formConfig) {
9145
- let liElement = document.createElement("li");
9146
- liElement["__formConfig__"] = formConfig;
9147
- this.setElementClassName(liElement, formConfig.className);
9148
- this.setElementAttributes(liElement, formConfig.attributes);
9149
- this.setElementProps(liElement, formConfig.props);
9147
+ let $li = document.createElement("li");
9148
+ Reflect.set($li, "__formConfig__", formConfig);
9149
+ this.setElementClassName($li, formConfig.className);
9150
+ this.setElementAttributes($li, formConfig.attributes);
9151
+ this.setElementProps($li, formConfig.props);
9150
9152
  /* 左边底部的描述的文字 */
9151
9153
  let leftDescriptionText = "";
9152
9154
  if (Boolean(formConfig.description)) {
9153
9155
  leftDescriptionText = /*html*/ `<p class="pops-panel-item-left-desc-text">${formConfig.description}</p>`;
9154
9156
  }
9155
- PopsSafeUtils.setSafeHTML(liElement,
9157
+ PopsSafeUtils.setSafeHTML($li,
9156
9158
  /*html*/ `
9157
9159
  <div class="pops-panel-item-left-text">
9158
9160
  <p class="pops-panel-item-left-main-text">${formConfig.text}</p>${leftDescriptionText}</div>
@@ -9166,10 +9168,10 @@ var pops = (function () {
9166
9168
  const PopsPanelButton = {
9167
9169
  [Symbol.toStringTag]: "PopsPanelButton",
9168
9170
  $ele: {
9169
- panelButton: liElement.querySelector(".pops-panel-button"),
9170
- button: liElement.querySelector(".pops-panel-button .pops-panel-button_inner"),
9171
- icon: liElement.querySelector(".pops-panel-button .pops-bottom-icon"),
9172
- spanText: liElement.querySelector(".pops-panel-button .pops-panel-button-text"),
9171
+ panelButton: $li.querySelector(".pops-panel-button"),
9172
+ button: $li.querySelector(".pops-panel-button .pops-panel-button_inner"),
9173
+ icon: $li.querySelector(".pops-panel-button .pops-bottom-icon"),
9174
+ spanText: $li.querySelector(".pops-panel-button .pops-panel-button-text"),
9173
9175
  },
9174
9176
  $data: {},
9175
9177
  init() {
@@ -9282,10 +9284,11 @@ var pops = (function () {
9282
9284
  },
9283
9285
  };
9284
9286
  PopsPanelButton.init();
9285
- liElement["data-button"] = PopsPanelButton;
9286
- return liElement;
9287
+ Reflect.set($li, "data-button", PopsPanelButton);
9288
+ return $li;
9287
9289
  },
9288
9290
  /**
9291
+ * type ==> deepMenu
9289
9292
  * 获取深层容器的元素<li>
9290
9293
  * @param formConfig
9291
9294
  */
@@ -9293,7 +9296,7 @@ var pops = (function () {
9293
9296
  let that = this;
9294
9297
  let $li = document.createElement("li");
9295
9298
  $li.classList.add("pops-panel-deepMenu-nav-item");
9296
- $li["__formConfig__"] = formConfig;
9299
+ Reflect.set($li, "__formConfig__", formConfig);
9297
9300
  this.setElementClassName($li, formConfig.className);
9298
9301
  // 设置属性
9299
9302
  this.setElementAttributes($li, formConfig.attributes);
@@ -9429,6 +9432,7 @@ var pops = (function () {
9429
9432
  let $deepMenuContainer = popsDOMUtils.createElement("section", {
9430
9433
  className: "pops-panel-container pops-panel-deepMenu-container",
9431
9434
  });
9435
+ Reflect.set($deepMenuContainer, "__formConfig__", formConfig);
9432
9436
  let $deepMenuHeaderUL = popsDOMUtils.createElement("ul", {
9433
9437
  className: "pops-panel-deepMenu-container-header-ul",
9434
9438
  });
@@ -9443,13 +9447,13 @@ var pops = (function () {
9443
9447
  className: "pops-panel-deepMenu-container-left-arrow-icon",
9444
9448
  innerHTML: PopsIcon.getIcon("arrowLeft"),
9445
9449
  });
9446
- popsDOMUtils.on($headerLeftArrow, "click", void 0, (event) => {
9447
- event?.preventDefault();
9448
- event?.stopPropagation();
9450
+ popsDOMUtils.on($headerLeftArrow, "click", (event) => {
9451
+ popsDOMUtils.preventEvent(event);
9449
9452
  // 返回上一层菜单
9450
- let $prev = $deepMenuContainer.previousElementSibling;
9453
+ let $prev = ($deepMenuContainer.previousElementSibling);
9451
9454
  popsDOMUtils.cssShow($prev);
9452
9455
  $deepMenuContainer.remove();
9456
+ that.triggerRenderRightContainer($prev);
9453
9457
  }, {
9454
9458
  once: true,
9455
9459
  });
@@ -9472,6 +9476,7 @@ var pops = (function () {
9472
9476
  sectionBodyContainer: $deepMenuBodyUL,
9473
9477
  });
9474
9478
  }
9479
+ that.triggerRenderRightContainer($deepMenuContainer);
9475
9480
  },
9476
9481
  /** 设置项的点击事件 */
9477
9482
  setLiClickEvent() {
@@ -9487,22 +9492,22 @@ var pops = (function () {
9487
9492
  },
9488
9493
  };
9489
9494
  PopsPanelDeepMenu.init();
9490
- $li["data-deepMenu"] = PopsPanelDeepMenu;
9495
+ Reflect.set($li, "data-deepMenu", PopsPanelDeepMenu);
9491
9496
  return $li;
9492
9497
  },
9493
9498
  /**
9494
- * 获取中间容器的元素<li>
9495
9499
  * type ===> own
9500
+ * 获取中间容器的元素<li>
9496
9501
  * @param formConfig
9497
9502
  */
9498
9503
  createSectionContainerItem_own(formConfig) {
9499
- let liElement = document.createElement("li");
9500
- liElement["__formConfig__"] = formConfig;
9504
+ let $li = document.createElement("li");
9505
+ Reflect.set($li, "__formConfig__", formConfig);
9501
9506
  if (formConfig.className) {
9502
- liElement.className = formConfig.className;
9507
+ $li.className = formConfig.className;
9503
9508
  }
9504
- liElement = formConfig.getLiElementCallBack(liElement);
9505
- return liElement;
9509
+ $li = formConfig.getLiElementCallBack($li);
9510
+ return $li;
9506
9511
  },
9507
9512
  /**
9508
9513
  * 获取中间容器的元素<li>
@@ -9623,6 +9628,17 @@ var pops = (function () {
9623
9628
  });
9624
9629
  }
9625
9630
  },
9631
+ /**
9632
+ * 触发触发渲染右侧容器的事件
9633
+ */
9634
+ triggerRenderRightContainer($container) {
9635
+ let __formConfig__ = Reflect.get($container, "__formConfig__");
9636
+ this.$el.$pops.dispatchEvent(new CustomEvent("pops:renderRightContainer", {
9637
+ detail: {
9638
+ formConfig: __formConfig__,
9639
+ },
9640
+ }));
9641
+ },
9626
9642
  /**
9627
9643
  *
9628
9644
  * @param formConfig
@@ -9649,6 +9665,8 @@ var pops = (function () {
9649
9665
  const that = this;
9650
9666
  popsDOMUtils.on(asideLiElement, "click", void 0, (event) => {
9651
9667
  this.clearContainer();
9668
+ let rightContainerFormConfig = Reflect.get(asideLiElement, "__forms__");
9669
+ Reflect.set(that.$el.$contentSectionContainer, "__formConfig__", rightContainerFormConfig);
9652
9670
  popsDOMUtils.cssShow(that.$el.$contentSectionContainer);
9653
9671
  this.clearAsideItemIsVisited();
9654
9672
  this.setAsideItemIsVisited(asideLiElement);
@@ -9656,20 +9674,19 @@ var pops = (function () {
9656
9674
  let headerTitleText = asideConfig.headerTitle ?? asideConfig.title;
9657
9675
  if (typeof headerTitleText === "string" &&
9658
9676
  headerTitleText.trim() !== "") {
9659
- let containerHeaderTitleLIElement = document.createElement("li");
9660
- containerHeaderTitleLIElement["__asideConfig__"] =
9661
- asideConfig;
9662
- PopsSafeUtils.setSafeHTML(containerHeaderTitleLIElement, headerTitleText);
9663
- this.sectionContainerHeaderULElement.appendChild(containerHeaderTitleLIElement);
9664
- }
9665
- let __forms__ = asideLiElement["__forms__"];
9666
- __forms__.forEach((formConfig) => {
9677
+ let $containerHeaderTitle = document.createElement("li");
9678
+ Reflect.set($containerHeaderTitle, "__asideConfig__", asideConfig);
9679
+ PopsSafeUtils.setSafeHTML($containerHeaderTitle, headerTitleText);
9680
+ this.sectionContainerHeaderULElement.appendChild($containerHeaderTitle);
9681
+ }
9682
+ rightContainerFormConfig.forEach((formConfig) => {
9667
9683
  this.createSectionContainerItem_forms(formConfig);
9668
9684
  });
9669
9685
  if (typeof asideConfig.callback === "function") {
9670
9686
  /* 执行回调 */
9671
9687
  asideConfig.callback(event, this.sectionContainerHeaderULElement, this.sectionContainerULElement);
9672
9688
  }
9689
+ that.triggerRenderRightContainer(that.$el.$contentSectionContainer);
9673
9690
  });
9674
9691
  },
9675
9692
  };
@@ -9759,13 +9776,14 @@ var pops = (function () {
9759
9776
  if ($mask != null) {
9760
9777
  $anim.after($mask);
9761
9778
  }
9762
- let panelHandleContentDetails = PanelHandleContentDetails();
9779
+ let panelHandlerComponents = PanelHandlerComponents();
9763
9780
  /**
9764
9781
  * 处理内部配置
9765
9782
  */
9766
- panelHandleContentDetails.init({
9783
+ panelHandlerComponents.init({
9767
9784
  config: config,
9768
9785
  $el: {
9786
+ $pops: $pops,
9769
9787
  $content: $content,
9770
9788
  $contentAside: $contentAside,
9771
9789
  $contentSectionContainer: $contentSectionContainer,
@@ -9790,7 +9808,15 @@ var pops = (function () {
9790
9808
  });
9791
9809
  }
9792
9810
  let result = PopsHandler.handleResultDetails(eventDetails);
9793
- return result;
9811
+ return {
9812
+ ...result,
9813
+ addEventListener: (event, listener, options) => {
9814
+ $pops.addEventListener(event, listener, options);
9815
+ },
9816
+ removeEventListener: (event, listener, options) => {
9817
+ $pops.removeEventListener(event, listener, options);
9818
+ },
9819
+ };
9794
9820
  },
9795
9821
  };
9796
9822
 
@@ -11034,14 +11060,14 @@ var pops = (function () {
11034
11060
  /** 配置 */
11035
11061
  config = {
11036
11062
  /** 版本号 */
11037
- version: "2025.6.18",
11063
+ version: "2025.7.1",
11038
11064
  cssText: PopsCSS,
11039
11065
  /** icon图标的svg代码 */
11040
11066
  iconSVG: PopsIcon.$data,
11041
11067
  /** 当前已配置的动画@keyframes名字映射(初始化时生成) */
11042
11068
  animation: PopsAnimation.$data,
11043
11069
  /** 存储已创建的元素 */
11044
- layer: PopsLayer,
11070
+ layer: PopsLayerData,
11045
11071
  /** 禁止滚动 */
11046
11072
  forbiddenScroll: {
11047
11073
  event(event) {
@@ -11057,7 +11083,7 @@ var pops = (function () {
11057
11083
  /** pops处理float类型使用的工具类 */
11058
11084
  MathFloatUtils: PopsMathFloatUtils,
11059
11085
  /** pops.panel中用于处理各个类型的工具 */
11060
- panelHandleContentUtils: PanelHandleContentDetails,
11086
+ PanelHandlerComponents: PanelHandlerComponents,
11061
11087
  };
11062
11088
  init() { }
11063
11089
  /**