diff --git a/lib/postbuild/postbuild.js b/lib/postbuild/postbuild.js index 6a0d81928..9e7e5301a 100644 --- a/lib/postbuild/postbuild.js +++ b/lib/postbuild/postbuild.js @@ -1,9 +1,9 @@ const { resolve } = require("path"); const { existsSync, mkdirSync, readFileSync, writeFileSync } = require("fs"); const rimraf = require("rimraf"); -const grunt = require("grunt"); const concat = require("concat"); -const { config } = require("../../webpack/attachments") +const glob = require("glob"); +const { config } = require("../../webpack/attachments"); const dest = resolve(__dirname, '../../dist'); @@ -25,10 +25,7 @@ const deleteList = [ "2.0/fineui_without_normalize.min.js.map", "fineui_without_normalize.min.js", "fineui_without_normalize.min.js.map", -].concat(grunt.file.expand({}, [ - "dist/*.css.map", - "dist/**/*.css.map", -]).map(name => name.replace("dist/", ""))); +].concat(glob.sync("dist/**/*.css.map").map(name => name.replace("dist/", ""))); deleteList.forEach(filename => { const sourcefile = resolve(dest, `./${filename}`); diff --git a/package.json b/package.json index 912095db0..201c3bb20 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,6 @@ "express": "4.15.2", "fork-ts-checker-webpack-plugin": "1.4.3", "glob": "^7.2.0", - "grunt": "^1.0.1", "html-webpack-plugin": "3.2.0", "husky": "^3.1.0", "karma": "3.1.4", diff --git a/src/core/platform/web/dom.js b/src/core/platform/web/dom.js index d934736c7..66f4b3651 100644 --- a/src/core/platform/web/dom.js +++ b/src/core/platform/web/dom.js @@ -448,7 +448,7 @@ viewportBounds = document.documentElement.getBoundingClientRect(); var left; if (comboRect.left + comboRect.width / 2 + popupRect.width / 2 > viewportBounds.width) { - left = viewportBounds.width - comboRect.width - positionRelativeElementRect.left; + left = viewportBounds.width - popupRect.width - positionRelativeElementRect.left; } else { left = comboRect.left + (comboRect.width - popupRect.width) / 2 - positionRelativeElementRect.left; } @@ -745,13 +745,14 @@ * 获取position:fixed相对定位的元素的clientRect */ getPositionRelativeContainingBlockRect: function (element) { - var positionRelativeElement = BI.DOM.getPositionRelativeContainingBlock(element); - var rect = positionRelativeElement.getBoundingClientRect(); + const positionRelativeElement = BI.DOM.getPositionRelativeContainingBlock(element); + const { top, right, bottom, left, width, height, x, y } = positionRelativeElement.getBoundingClientRect(); + return { - ...rect.toJSON(), - scaleX: rect.width / positionRelativeElement.offsetWidth, - scaleY: rect.height / positionRelativeElement.offsetHeight + top, right, bottom, left, width, height, x, y, + scaleX: width / positionRelativeElement.offsetWidth, + scaleY: height / positionRelativeElement.offsetHeight, }; }, }); diff --git a/src/core/utils/chinesePY.js b/src/core/utils/chinesePY.js index b22cd94cb..392f108b4 100644 --- a/src/core/utils/chinesePY.js +++ b/src/core/utils/chinesePY.js @@ -425,6 +425,10 @@ BI._.extend(BI, { makeFirstPY: function (str, options) { options = options || {}; + // BI-119441 长字段搜索分叉后数量达百万级,这里控制下字段过长的话不进行多音字分叉 + if (str.length > 100 && BI.isNull(options.ignoreMulti)) { + options.ignoreMulti = true; + } if (typeof (str) !== "string") {return "" + str;} var arrResult = []; // 保存中间结果的数组 for (var i = 0, len = str.length; i < len; i++) {