hbte-saas-ui 1.7.2 → 1.7.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.
@@ -2045,6 +2045,82 @@ module.exports = fails(function () {
2045
2045
  });
2046
2046
 
2047
2047
 
2048
+ /***/ }),
2049
+
2050
+ /***/ "10d1":
2051
+ /***/ (function(module, exports, __webpack_require__) {
2052
+
2053
+ "use strict";
2054
+
2055
+ var global = __webpack_require__("da84");
2056
+ var uncurryThis = __webpack_require__("e330");
2057
+ var redefineAll = __webpack_require__("e2cc");
2058
+ var InternalMetadataModule = __webpack_require__("f183");
2059
+ var collection = __webpack_require__("6d61");
2060
+ var collectionWeak = __webpack_require__("acac");
2061
+ var isObject = __webpack_require__("861d");
2062
+ var isExtensible = __webpack_require__("4fad");
2063
+ var enforceInternalState = __webpack_require__("69f3").enforce;
2064
+ var NATIVE_WEAK_MAP = __webpack_require__("7f9a");
2065
+
2066
+ var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
2067
+ var InternalWeakMap;
2068
+
2069
+ var wrapper = function (init) {
2070
+ return function WeakMap() {
2071
+ return init(this, arguments.length ? arguments[0] : undefined);
2072
+ };
2073
+ };
2074
+
2075
+ // `WeakMap` constructor
2076
+ // https://tc39.es/ecma262/#sec-weakmap-constructor
2077
+ var $WeakMap = collection('WeakMap', wrapper, collectionWeak);
2078
+
2079
+ // IE11 WeakMap frozen keys fix
2080
+ // We can't use feature detection because it crash some old IE builds
2081
+ // https://github.com/zloirock/core-js/issues/485
2082
+ if (NATIVE_WEAK_MAP && IS_IE11) {
2083
+ InternalWeakMap = collectionWeak.getConstructor(wrapper, 'WeakMap', true);
2084
+ InternalMetadataModule.enable();
2085
+ var WeakMapPrototype = $WeakMap.prototype;
2086
+ var nativeDelete = uncurryThis(WeakMapPrototype['delete']);
2087
+ var nativeHas = uncurryThis(WeakMapPrototype.has);
2088
+ var nativeGet = uncurryThis(WeakMapPrototype.get);
2089
+ var nativeSet = uncurryThis(WeakMapPrototype.set);
2090
+ redefineAll(WeakMapPrototype, {
2091
+ 'delete': function (key) {
2092
+ if (isObject(key) && !isExtensible(key)) {
2093
+ var state = enforceInternalState(this);
2094
+ if (!state.frozen) state.frozen = new InternalWeakMap();
2095
+ return nativeDelete(this, key) || state.frozen['delete'](key);
2096
+ } return nativeDelete(this, key);
2097
+ },
2098
+ has: function has(key) {
2099
+ if (isObject(key) && !isExtensible(key)) {
2100
+ var state = enforceInternalState(this);
2101
+ if (!state.frozen) state.frozen = new InternalWeakMap();
2102
+ return nativeHas(this, key) || state.frozen.has(key);
2103
+ } return nativeHas(this, key);
2104
+ },
2105
+ get: function get(key) {
2106
+ if (isObject(key) && !isExtensible(key)) {
2107
+ var state = enforceInternalState(this);
2108
+ if (!state.frozen) state.frozen = new InternalWeakMap();
2109
+ return nativeHas(this, key) ? nativeGet(this, key) : state.frozen.get(key);
2110
+ } return nativeGet(this, key);
2111
+ },
2112
+ set: function set(key, value) {
2113
+ if (isObject(key) && !isExtensible(key)) {
2114
+ var state = enforceInternalState(this);
2115
+ if (!state.frozen) state.frozen = new InternalWeakMap();
2116
+ nativeHas(this, key) ? nativeSet(this, key, value) : state.frozen.set(key, value);
2117
+ } else nativeSet(this, key, value);
2118
+ return this;
2119
+ }
2120
+ });
2121
+ }
2122
+
2123
+
2048
2124
  /***/ }),
2049
2125
 
2050
2126
  /***/ "10e8":
@@ -28141,20 +28217,18 @@ var component = Object(componentNormalizer["a" /* default */])(
28141
28217
  // ESM COMPAT FLAG
28142
28218
  __webpack_require__.r(__webpack_exports__);
28143
28219
 
28144
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"80de914c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/table/src/main.vue?vue&type=template&id=81519662&
28220
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"80de914c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/table/src/main.vue?vue&type=template&id=ae28c6ca&
28145
28221
  var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"hb-table"},[_c('el-table',_vm._g(_vm._b({directives:[{name:"loading",rawName:"v-loading",value:(_vm.loading),expression:"loading"}],key:_vm.key,ref:"table",class:{ 'no-empty': _vm.$attrs.empty },staticStyle:{"flex":"1"},attrs:{"data":_vm.tableData,"border":true,"height":_vm.height,"stripe":_vm.stripe},on:{"select":_vm.selectData,"select-all":_vm.selectData,"header-dragend":_vm.dragend}},'el-table',_vm.$attrs,false),_vm.$listeners),[_c('template',{slot:"empty"},[_vm._t("customEmpty",function(){return [_c('div',{staticClass:"hb-table-nodata"}),_c('div',{staticClass:"hb-table-nodata-text"},[_vm._v("暂无数据")])]})],2),(_vm.expand)?_c('el-table-column',{attrs:{"type":"expand"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
28146
28222
  var row = ref.row;
28147
28223
  return [_vm._t("expand",null,{"column":row})]}}],null,true)}):_vm._e(),(_vm.serial)?_c('el-table-column',{attrs:{"label":"序号","type":"index","align":"center","width":"32","fixed":"left","resizable":false,"class-name":"hb-table-index"}}):_vm._e(),(_vm.select)?_c('el-table-column',{attrs:{"type":"selection","align":"center","width":"20","selectable":_vm.selectable,"resizable":false,"reserve-selection":_vm.reserveSelect,"fixed":"left"}}):_vm._e(),_vm._l((_vm.columns),function(item,colIndex){return [(item.slot && item.currentSelect)?_vm._t(item.prop,null,{"column":item}):(item.edit && item.currentSelect)?_c('el-table-column',{key:("edit::" + (item.prop)),attrs:{"prop":item.prop,"label":item.label,"width":item.minWidth > 0 ? undefined : item.width,"min-width":item.minWidth,"formatter":item.formatter,"fixed":item.fixed,"align":item.align || 'left',"show-overflow-tooltip":!item.edit.keepEdit,"resizable":item.resizable === false ? false : true},scopedSlots:_vm._u([{key:"default",fn:function(ref){
28148
28224
  var row = ref.row;
28149
28225
  var col = ref.col;
28150
28226
  var $index = ref.$index;
28151
- return [(!item.editCondition || item.editCondition($index, row))?_c('hb-editarea',_vm._b({ref:item.edit.keepEdit
28152
- ? ("editarea_" + $index + "_" + colIndex + "_" + _vm.cmpKey)
28153
- : undefined,refInFor:true,class:item.edit.keepEdit ? "hb-table__keep" : 'hb-table__edit',attrs:{"keepEdit":item.edit.keepEdit,"value":row[item.prop],"border":true,"insert":_vm.handleInsertCell(row, item),"change":_vm.handleChangeCell(row, item)},on:{"update:value":function($event){return _vm.$set(row, item.prop, $event)}}},'hb-editarea',item.edit,false)):_c('font',[_vm._v(_vm._s(row[item.prop]))])]}}],null,true)}):(item.currentSelect)?_c('el-table-column',{key:("default::" + (item.prop)),attrs:{"prop":item.prop,"label":item.label,"width":item.width,"min-width":item.minWidth,"formatter":item.formatter,"fixed":item.fixed,"align":item.align || 'left',"show-overflow-tooltip":true,"resizable":item.resizable === false ? false : true,"sortable":item.sortable}}):_vm._e()]}),(_vm.showBlankColumn && _vm.customBlankColumn)?_c('el-table-column',{key:"layoutColumn",attrs:{"min-width":"1px","resizable":false}}):_vm._e()],2)],1)}
28227
+ return [(!item.editCondition || item.editCondition($index, row))?_c('hb-editarea',_vm._b({ref:item.edit.keepEdit ? ("editarea_" + $index + "_" + colIndex + "_" + _vm.cmpKey) : undefined,refInFor:true,class:item.edit.keepEdit ? "hb-table__keep" : 'hb-table__edit',attrs:{"keepEdit":item.edit.keepEdit,"value":row[item.prop],"border":true,"insert":_vm.handleInsertCell(row, item),"change":_vm.handleChangeCell(row, item)},on:{"update:value":function($event){return _vm.$set(row, item.prop, $event)}}},'hb-editarea',item.edit,false)):_c('font',[_vm._v(_vm._s(row[item.prop]))])]}}],null,true)}):(item.currentSelect)?_c('el-table-column',{key:("default::" + (item.prop)),attrs:{"prop":item.prop,"label":item.label,"width":item.width,"min-width":item.minWidth,"formatter":item.formatter,"fixed":item.fixed,"align":item.align || 'left',"show-overflow-tooltip":true,"resizable":item.resizable === false ? false : true,"sortable":item.sortable}}):_vm._e()]}),(_vm.showBlankColumn && _vm.customBlankColumn)?_c('el-table-column',{key:"layoutColumn",attrs:{"min-width":"1px","resizable":false}}):_vm._e()],2)],1)}
28154
28228
  var staticRenderFns = []
28155
28229
 
28156
28230
 
28157
- // CONCATENATED MODULE: ./packages/table/src/main.vue?vue&type=template&id=81519662&
28231
+ // CONCATENATED MODULE: ./packages/table/src/main.vue?vue&type=template&id=ae28c6ca&
28158
28232
 
28159
28233
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js
28160
28234
  var es_object_to_string = __webpack_require__("d3b7");
@@ -28284,14 +28358,6 @@ var es_array_find = __webpack_require__("7db0");
28284
28358
  //
28285
28359
  //
28286
28360
  //
28287
- //
28288
- //
28289
- //
28290
- //
28291
- //
28292
- //
28293
- //
28294
- //
28295
28361
  /* harmony default export */ var mainvue_type_script_lang_js_ = ({
28296
28362
  name: "HbTable",
28297
28363
  componentName: "HbTable",
@@ -41738,48 +41804,50 @@ $({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {
41738
41804
  // ESM COMPAT FLAG
41739
41805
  __webpack_require__.r(__webpack_exports__);
41740
41806
 
41741
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"80de914c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/adv-query/src/main.vue?vue&type=template&id=764aa9a8&
41807
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"80de914c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/adv-query/src/main.vue?vue&type=template&id=738f1836&
41742
41808
  var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"hb-advquery"},[_c('div',{staticClass:"hb-advquery-handles"},[_c('div',{staticClass:"hb-advquery__tools"},[_vm._t("tools")],2),_c('div',{staticClass:"hb-advquery-query-btn"},[(_vm.showAdvQuery)?_c('el-button',{staticClass:"hb-advquery-query-btn__item",class:_vm.extend ? 'hb-advquery-btn-extend' : 'hb-advquery-btn-unextend',attrs:{"size":"mini","icon":"icon-hb-gaojichaxun"},on:{"click":_vm.tabExtend}},[_vm._v(" 筛选 ")]):_vm._e(),_vm._t("cusBtn"),(_vm.showCusQuery)?_c('el-dropdown',{attrs:{"trigger":"click","size":"small"}},[(_vm.customQueryLabel.length > 10)?_c('div',{staticClass:"hb-advquery-query-btn__custom"},[_c('el-tooltip',{attrs:{"content":_vm.customQueryLabel}},[_c('span',[_vm._v(_vm._s(_vm.customQueryLabel.slice(0, 10) + "..."))])])],1):_c('div',{staticClass:"hb-advquery-query-btn__custom"},[_vm._v(" "+_vm._s(_vm.customQueryLabel)+" ")]),_c('el-dropdown-menu',{attrs:{"slot":"dropdown"},slot:"dropdown"},[_c('el-dropdown-item',[_c('span',{on:{"click":function($event){return _vm.customQuery({ label: '全部', value: 'all' })}}},[_vm._v("全部")])]),_c('el-dropdown-item',[_vm._t("dropdownSlotItem")],2),_vm._l((_vm.customQueryData),function(i,index){return _c('el-dropdown-item',{key:index,attrs:{"command":i.value}},[(i.label.length > 10)?_c('span',[_c('el-tooltip',{attrs:{"content":_vm.customQueryLabel}},[_c('span',{staticClass:"hb-advquery-query-btn__custom__dropdown-item",on:{"click":function($event){return _vm.customQuery(i)}}},[_vm._v(_vm._s(i.label.slice(0, 10) + "..."))])])],1):_c('span',{staticClass:"hb-advquery-query-btn__custom__dropdown-item",on:{"click":function($event){return _vm.customQuery(i)}}},[_vm._v(_vm._s(i.label))]),_c('i',{staticClass:"icon-hb-shanchu hb-advquery-query-btn__custom__handle-btn",attrs:{"size":"mini"},on:{"click":function($event){return _vm.deleteCus(i)}}}),_c('i',{staticClass:"icon-hb-bianji hb-advquery-query-btn__custom__handle-btn",attrs:{"size":"mini"},on:{"click":function($event){return _vm.editCus(i)}}})])}),_c('span',{on:{"click":_vm.addCus}},[_c('el-dropdown-item',{attrs:{"divided":"","icon":"el-icon-plus"}},[_vm._v(" 新建筛选")])],1)],2)],1):_vm._e(),(_vm.showRefresh)?_c('el-button',{staticClass:"hb-advquery-query-btn__item",attrs:{"size":"mini","icon":"icon-hb-shuaxin"},on:{"click":_vm.refresh}},[_vm._v(" 刷新 ")]):_vm._e()],2)]),(_vm.showAdvQuery)?_c('div',{staticClass:"hb-advquery-form",class:_vm.extend ? 'hb-advquery-form-extend' : 'hb-advquery-form-unextend',attrs:{"id":"qry-form"}},[_c('el-form',{directives:[{name:"layout-flex",rawName:"v-layout-flex.end",value:({ gutter: 10, minWidth: 265, maxWidth: 265 }),expression:"{ gutter: 10, minWidth: 265, maxWidth: 265 }",modifiers:{"end":true}}],ref:"queryForm",staticClass:"hb-advquery-form__content",attrs:{"size":"mini","model":_vm.qryFormData,"label-position":"right","label-width":"85px","rules":_vm.rules}},[_vm._l((_vm.qryFormProps),function(i,index){return _c('el-form-item',{key:i.prop + index,staticClass:"hb-advquery-form__item",attrs:{"label":i.label,"prop":i.prop ? i.prop : ''}},[_c('hb-query-form',_vm._b({attrs:{"formProp":i,"qryFormData":_vm.qryFormData},on:{"search":_vm.advQuery}},'hb-query-form',i.bind,false),[(i.slot)?[_vm._t(i.prop)]:_vm._e()],2)],1)}),_c('div',{staticClass:"hb-advquery-search-button"},[_c('el-button',{staticClass:"hb-advquery-search-button__btn",attrs:{"size":"mini","type":"primary"},on:{"click":_vm.advQuery}},[_vm._v("查询")]),_c('el-button',{staticClass:"hb-advquery-search-button__btn",attrs:{"size":"mini"},on:{"click":_vm.reset}},[_vm._v("重置")]),_c('el-button',{staticClass:"el-icon-arrow-up hb-advquery-search-button__extend hb-advquery-search-button__btn",attrs:{"size":"mini"},on:{"click":_vm.tabExtend}})],1)],2)],1):_vm._e(),_c('hb-custom-query',{ref:"dialog",attrs:{"qryFormProps":_vm.qryFormProps,"qryFormData":_vm.qryFormData},on:{"customQuerySave":_vm.customQuerySave}})],1)}
41743
41809
  var staticRenderFns = []
41744
41810
 
41745
41811
 
41746
- // CONCATENATED MODULE: ./packages/adv-query/src/main.vue?vue&type=template&id=764aa9a8&
41812
+ // CONCATENATED MODULE: ./packages/adv-query/src/main.vue?vue&type=template&id=738f1836&
41747
41813
 
41748
41814
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.json.stringify.js
41749
41815
  var es_json_stringify = __webpack_require__("e9c4");
41750
41816
 
41817
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.iterator.js
41818
+ var es_array_iterator = __webpack_require__("e260");
41819
+
41751
41820
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js
41752
41821
  var es_object_to_string = __webpack_require__("d3b7");
41753
41822
 
41823
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js
41824
+ var es_string_iterator = __webpack_require__("3ca3");
41825
+
41826
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.weak-map.js
41827
+ var es_weak_map = __webpack_require__("10d1");
41828
+
41829
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js
41830
+ var web_dom_collections_iterator = __webpack_require__("ddb0");
41831
+
41832
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.assign.js
41833
+ var es_object_assign = __webpack_require__("cca6");
41834
+
41754
41835
  // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js
41755
41836
  var web_dom_collections_for_each = __webpack_require__("159b");
41756
41837
 
41757
41838
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.from.js
41758
41839
  var es_array_from = __webpack_require__("a630");
41759
41840
 
41760
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js
41761
- var es_string_iterator = __webpack_require__("3ca3");
41762
-
41763
41841
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--13-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/adv-query/src/main.vue?vue&type=script&lang=js&
41764
41842
 
41765
41843
 
41766
41844
 
41767
41845
 
41768
41846
 
41769
- //
41770
- //
41771
- //
41772
- //
41773
- //
41774
- //
41775
- //
41776
- //
41777
- //
41778
- //
41779
- //
41780
- //
41781
- //
41782
- //
41847
+
41848
+
41849
+
41850
+
41783
41851
  //
41784
41852
  //
41785
41853
  //
@@ -42084,83 +42152,134 @@ var es_string_iterator = __webpack_require__("3ca3");
42084
42152
  directives: {
42085
42153
  "layout-flex": {
42086
42154
  bind: function bind(el, binding) {
42087
- //初始化父元素样式
42088
- el.style.display = "flex";
42089
- el.style.justifyContent = "flex-start";
42090
- el.style.flexWrap = "wrap"; //生成并插入工具节点
42155
+ // 1. 使用WeakMap避免内存泄漏
42156
+ var handlersMap = new WeakMap(); //初始化父元素样式
42157
+
42158
+ Object.assign(el.style, {
42159
+ display: "flex",
42160
+ justifyContent: "flex-start",
42161
+ flexWrap: "wrap"
42162
+ }); //生成并插入工具节点
42091
42163
 
42092
42164
  el.HB_LAYOUT_TOOLNODE = document.createElement("div");
42093
42165
 
42094
42166
  if (binding.modifiers.end) {
42095
42167
  el.insertBefore(el.HB_LAYOUT_TOOLNODE, el.children[el.children.length - 1]);
42096
- } //计算子节点和工具节点的宽度
42168
+ }
42097
42169
 
42170
+ var _handler = function (el, binding) {
42171
+ cancelAnimationFrame(handlersMap.get(el));
42172
+ handlersMap.set(el, requestAnimationFrame(function () {
42173
+ var _binding$value, _binding$value2, _binding$value3, _binding$value4, _binding$value5;
42098
42174
 
42099
- el.HB_LAYOUT_HANDLER = function (el, binding) {
42100
- var _binding$value, _binding$value2, _binding$value3, _binding$value4, _binding$value5;
42175
+ if (el.clientWidth === 0) return; //计算子元素的宽度和插入工具节点的个数
42101
42176
 
42102
- //计算子元素的宽度和插入工具节点的个数
42103
- var clientWidth = el.clientWidth - 8; //总宽度
42177
+ var clientWidth = el.clientWidth - 8; //总宽度
42104
42178
 
42105
- var minWidth = ((_binding$value = binding.value) === null || _binding$value === void 0 ? void 0 : _binding$value.minWidth) || 280; //子元素最小宽度
42179
+ var minWidth = ((_binding$value = binding.value) === null || _binding$value === void 0 ? void 0 : _binding$value.minWidth) || 280; //子元素最小宽度
42106
42180
 
42107
- var gutter = ((_binding$value2 = binding.value) === null || _binding$value2 === void 0 ? void 0 : _binding$value2.gutter) || 20; //子元素之间的间距
42181
+ var gutter = ((_binding$value2 = binding.value) === null || _binding$value2 === void 0 ? void 0 : _binding$value2.gutter) || 20; //子元素之间的间距
42108
42182
 
42109
- var num = Math.floor((clientWidth + gutter) / (minWidth + gutter)) || 1; //列数
42183
+ var num = Math.floor((clientWidth + gutter) / (minWidth + gutter)) || 1; //列数
42110
42184
 
42111
- var nodeNum = ((_binding$value3 = binding.value) === null || _binding$value3 === void 0 ? void 0 : _binding$value3.nodeNum) || el.children.length;
42185
+ var nodeNum = ((_binding$value3 = binding.value) === null || _binding$value3 === void 0 ? void 0 : _binding$value3.nodeNum) || el.children.length;
42112
42186
 
42113
- if (num > nodeNum && !binding.modifiers.end) {
42114
- //非end模式下列数大于子元素个数时,不再设置工具节点的宽度
42115
- num = nodeNum;
42116
- }
42187
+ if (num > nodeNum && !binding.modifiers.end) {
42188
+ //非end模式下列数大于子元素个数时,不再设置工具节点的宽度
42189
+ num = nodeNum;
42190
+ }
42117
42191
 
42118
- var width = Math.floor((clientWidth - (num - 1) * gutter) / num); //子元素最终宽度
42119
- //非end模式下支持maxWidth,end模式不会无限拉宽的,过多的宽度会给到工具节点
42192
+ var width = Math.floor((clientWidth - (num - 1) * gutter) / num); //子元素最终宽度
42193
+ //非end模式下支持maxWidth,end模式不会无限拉宽的,过多的宽度会给到工具节点
42120
42194
 
42121
- if (!binding.modifiers.end && (_binding$value4 = binding.value) !== null && _binding$value4 !== void 0 && _binding$value4.maxWidth && ((_binding$value5 = binding.value) === null || _binding$value5 === void 0 ? void 0 : _binding$value5.maxWidth) < width) {
42122
- width = binding.value.maxWidth;
42123
- }
42195
+ if (!binding.modifiers.end && (_binding$value4 = binding.value) !== null && _binding$value4 !== void 0 && _binding$value4.maxWidth && ((_binding$value5 = binding.value) === null || _binding$value5 === void 0 ? void 0 : _binding$value5.maxWidth) < width) {
42196
+ width = binding.value.maxWidth;
42197
+ }
42124
42198
 
42125
- var colspan = num - (el.children.length - 1) % num; //工具节点所占列数
42199
+ var colspan = num - (el.children.length - 1) % num; //工具节点所占列数
42126
42200
 
42127
- colspan === num ? colspan = 0 : null; //设置子节点宽度和右边距
42201
+ colspan === num ? colspan = 0 : null; //设置子节点宽度和右边距
42128
42202
 
42129
- Array.from(el.children).forEach(function (item, index, arr) {
42130
- item.style.width = width + "px";
42203
+ Array.from(el.children).forEach(function (item, index, arr) {
42204
+ item.style.width = width + "px";
42131
42205
 
42132
- if ((index + 1) % num && index !== arr.length - 1) {
42133
- item.style.marginRight = gutter + "px";
42134
- } else {
42135
- item.style.marginRight = "0px";
42136
- } //独占一行的子元素
42206
+ if ((index + 1) % num && index !== arr.length - 1) {
42207
+ item.style.marginRight = gutter + "px";
42208
+ } else {
42209
+ item.style.marginRight = "0px";
42210
+ } //独占一行的子元素
42137
42211
 
42138
42212
 
42139
- if (binding.value.nodeNum) {
42140
- if (index >= binding.value.nodeNum) {
42141
- item.style.marginRight = "0px";
42142
- item.style.width = "100%";
42213
+ if (binding.value.nodeNum) {
42214
+ if (index >= binding.value.nodeNum) {
42215
+ item.style.marginRight = "0px";
42216
+ item.style.width = "100%";
42217
+ }
42143
42218
  }
42219
+ }); //end模式下设置工具节点宽度
42220
+
42221
+ if (colspan && binding.modifiers.end) {
42222
+ el.HB_LAYOUT_TOOLNODE.style.display = "block";
42223
+ el.HB_LAYOUT_TOOLNODE.style.width = colspan * width + (colspan - 1) * gutter + "px";
42224
+ } else {
42225
+ el.HB_LAYOUT_TOOLNODE.style.display = "none";
42144
42226
  }
42145
- }); //end模式下设置工具节点宽度
42227
+ }));
42228
+ }.bind(null, el, binding); //计算子节点和工具节点的宽度
42146
42229
 
42147
- if (colspan && binding.modifiers.end) {
42148
- el.HB_LAYOUT_TOOLNODE.style.display = "block";
42149
- el.HB_LAYOUT_TOOLNODE.style.width = colspan * width + (colspan - 1) * gutter + "px";
42150
- } else {
42151
- el.HB_LAYOUT_TOOLNODE.style.display = "none";
42152
- }
42153
- }.bind(null, el, binding);
42230
+
42231
+ el.HB_LAYOUT_HANDLER = _handler;
42232
+
42233
+ if ("ResizeObserver" in window) {
42234
+ el.HB_LAYOUT_RESIZE_OBSERVER = new ResizeObserver(_handler);
42235
+ el.HB_LAYOUT_RESIZE_OBSERVER.observe(el);
42236
+ } else {
42237
+ window.addEventListener("resize", _handler);
42238
+ }
42154
42239
  },
42155
42240
  inserted: function inserted(el) {
42156
- el.HB_LAYOUT_HANDLER();
42157
- window.addEventListener("resize", el.HB_LAYOUT_HANDLER);
42241
+ // 1. 使用WeakMap避免内存泄漏
42242
+ var handlersMap = new WeakMap(); // 确保至少执行一次
42243
+
42244
+ var tryLayout = function tryLayout() {
42245
+ cancelAnimationFrame(handlersMap.get(el));
42246
+
42247
+ if (el.clientWidth === 0) {
42248
+ handlersMap.set(el, requestAnimationFrame(tryLayout));
42249
+ } else {
42250
+ el.HB_LAYOUT_HANDLER();
42251
+ }
42252
+ };
42253
+
42254
+ tryLayout();
42158
42255
  },
42159
42256
  componentUpdated: function componentUpdated(el) {
42160
- el.HB_LAYOUT_HANDLER();
42257
+ // 1. 使用WeakMap避免内存泄漏
42258
+ var handlersMap = new WeakMap(); // 确保至少执行一次
42259
+
42260
+ var tryLayout = function tryLayout() {
42261
+ cancelAnimationFrame(handlersMap.get(el));
42262
+
42263
+ if (el.clientWidth === 0) {
42264
+ handlersMap.set(el, requestAnimationFrame(tryLayout));
42265
+ } else {
42266
+ el.HB_LAYOUT_HANDLER();
42267
+ }
42268
+ };
42269
+
42270
+ tryLayout();
42161
42271
  },
42162
42272
  unbind: function unbind(el) {
42273
+ // 完善清理逻辑
42274
+ if (el.HB_LAYOUT_RESIZE_OBSERVER) {
42275
+ el.HB_LAYOUT_RESIZE_OBSERVER.disconnect();
42276
+ }
42277
+
42163
42278
  window.removeEventListener("resize", el.HB_LAYOUT_HANDLER);
42279
+
42280
+ if (el.HB_LAYOUT_TOOLNODE && el.HB_LAYOUT_TOOLNODE.parentNode) {
42281
+ el.HB_LAYOUT_TOOLNODE.parentNode.removeChild(el.HB_LAYOUT_TOOLNODE);
42282
+ }
42164
42283
  }
42165
42284
  }
42166
42285
  }
@@ -46851,6 +46970,144 @@ $({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
46851
46970
  });
46852
46971
 
46853
46972
 
46973
+ /***/ }),
46974
+
46975
+ /***/ "acac":
46976
+ /***/ (function(module, exports, __webpack_require__) {
46977
+
46978
+ "use strict";
46979
+
46980
+ var uncurryThis = __webpack_require__("e330");
46981
+ var redefineAll = __webpack_require__("e2cc");
46982
+ var getWeakData = __webpack_require__("f183").getWeakData;
46983
+ var anObject = __webpack_require__("825a");
46984
+ var isObject = __webpack_require__("861d");
46985
+ var anInstance = __webpack_require__("19aa");
46986
+ var iterate = __webpack_require__("2266");
46987
+ var ArrayIterationModule = __webpack_require__("b727");
46988
+ var hasOwn = __webpack_require__("1a2d");
46989
+ var InternalStateModule = __webpack_require__("69f3");
46990
+
46991
+ var setInternalState = InternalStateModule.set;
46992
+ var internalStateGetterFor = InternalStateModule.getterFor;
46993
+ var find = ArrayIterationModule.find;
46994
+ var findIndex = ArrayIterationModule.findIndex;
46995
+ var splice = uncurryThis([].splice);
46996
+ var id = 0;
46997
+
46998
+ // fallback for uncaught frozen keys
46999
+ var uncaughtFrozenStore = function (store) {
47000
+ return store.frozen || (store.frozen = new UncaughtFrozenStore());
47001
+ };
47002
+
47003
+ var UncaughtFrozenStore = function () {
47004
+ this.entries = [];
47005
+ };
47006
+
47007
+ var findUncaughtFrozen = function (store, key) {
47008
+ return find(store.entries, function (it) {
47009
+ return it[0] === key;
47010
+ });
47011
+ };
47012
+
47013
+ UncaughtFrozenStore.prototype = {
47014
+ get: function (key) {
47015
+ var entry = findUncaughtFrozen(this, key);
47016
+ if (entry) return entry[1];
47017
+ },
47018
+ has: function (key) {
47019
+ return !!findUncaughtFrozen(this, key);
47020
+ },
47021
+ set: function (key, value) {
47022
+ var entry = findUncaughtFrozen(this, key);
47023
+ if (entry) entry[1] = value;
47024
+ else this.entries.push([key, value]);
47025
+ },
47026
+ 'delete': function (key) {
47027
+ var index = findIndex(this.entries, function (it) {
47028
+ return it[0] === key;
47029
+ });
47030
+ if (~index) splice(this.entries, index, 1);
47031
+ return !!~index;
47032
+ }
47033
+ };
47034
+
47035
+ module.exports = {
47036
+ getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {
47037
+ var Constructor = wrapper(function (that, iterable) {
47038
+ anInstance(that, Prototype);
47039
+ setInternalState(that, {
47040
+ type: CONSTRUCTOR_NAME,
47041
+ id: id++,
47042
+ frozen: undefined
47043
+ });
47044
+ if (iterable != undefined) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });
47045
+ });
47046
+
47047
+ var Prototype = Constructor.prototype;
47048
+
47049
+ var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);
47050
+
47051
+ var define = function (that, key, value) {
47052
+ var state = getInternalState(that);
47053
+ var data = getWeakData(anObject(key), true);
47054
+ if (data === true) uncaughtFrozenStore(state).set(key, value);
47055
+ else data[state.id] = value;
47056
+ return that;
47057
+ };
47058
+
47059
+ redefineAll(Prototype, {
47060
+ // `{ WeakMap, WeakSet }.prototype.delete(key)` methods
47061
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.delete
47062
+ // https://tc39.es/ecma262/#sec-weakset.prototype.delete
47063
+ 'delete': function (key) {
47064
+ var state = getInternalState(this);
47065
+ if (!isObject(key)) return false;
47066
+ var data = getWeakData(key);
47067
+ if (data === true) return uncaughtFrozenStore(state)['delete'](key);
47068
+ return data && hasOwn(data, state.id) && delete data[state.id];
47069
+ },
47070
+ // `{ WeakMap, WeakSet }.prototype.has(key)` methods
47071
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.has
47072
+ // https://tc39.es/ecma262/#sec-weakset.prototype.has
47073
+ has: function has(key) {
47074
+ var state = getInternalState(this);
47075
+ if (!isObject(key)) return false;
47076
+ var data = getWeakData(key);
47077
+ if (data === true) return uncaughtFrozenStore(state).has(key);
47078
+ return data && hasOwn(data, state.id);
47079
+ }
47080
+ });
47081
+
47082
+ redefineAll(Prototype, IS_MAP ? {
47083
+ // `WeakMap.prototype.get(key)` method
47084
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.get
47085
+ get: function get(key) {
47086
+ var state = getInternalState(this);
47087
+ if (isObject(key)) {
47088
+ var data = getWeakData(key);
47089
+ if (data === true) return uncaughtFrozenStore(state).get(key);
47090
+ return data ? data[state.id] : undefined;
47091
+ }
47092
+ },
47093
+ // `WeakMap.prototype.set(key, value)` method
47094
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.set
47095
+ set: function set(key, value) {
47096
+ return define(this, key, value);
47097
+ }
47098
+ } : {
47099
+ // `WeakSet.prototype.add(value)` method
47100
+ // https://tc39.es/ecma262/#sec-weakset.prototype.add
47101
+ add: function add(value) {
47102
+ return define(this, value, true);
47103
+ }
47104
+ });
47105
+
47106
+ return Constructor;
47107
+ }
47108
+ };
47109
+
47110
+
46854
47111
  /***/ }),
46855
47112
 
46856
47113
  /***/ "ad6d":