Browse Source

Merge pull request #233745 in DEC/fineui from bugfix/11.0 to release/11.0

* commit 'f9bfd1733a45a073d900f8995811f71d13c14581': (30 commits)
  auto upgrade version to 2.0.20230413101426
  auto upgrade version to 2.0.20230413093600
  auto upgrade version to 2.0.20230412174452
  BI-124805 fix: revert BI-122401
  BI-124559 fix: 升级BI6版本后,老版本火狐浏览器无法打开仪表板
  auto upgrade version to 2.0.20230411181532
  auto upgrade version to 2.0.20230411180538
  auto upgrade version to 2.0.20230411093545
  BI-124616 更新字体文件
  auto upgrade version to 2.0.20230410093737
  无JIRA fix: 书写错误_isOverflowY判断
  无JIRA fix: 国际组反馈, 多语言环境word-break问题
  auto upgrade version to 2.0.20230407135454
  auto upgrade version to 2.0.20230406204420
  auto upgrade version to 2.0.20230406155618
  BI-123725 fix: 使用统一的高亮cls
  auto upgrade version to 2.0.20230406144639
  无JIRA fix: simple下的边框圆角控制
  FDL-4442 fix: downListCombo单边框时去掉圆角
  auto upgrade version to 2.0.20230403115702
  ...
research/test
superman 1 year ago
parent
commit
91f2efda74
  1. 2
      package.json
  2. 2
      src/base/collection/collection.js
  3. 10
      src/base/combination/group.combo.js
  4. 64
      src/base/combination/loader.js
  5. 2
      src/base/combination/searcher.js
  6. 26
      src/base/pager/pager.js
  7. 8
      src/base/single/input/input.js
  8. 20
      src/case/layer/pane.list.js
  9. 44
      src/case/loader/loader.list.js
  10. 2
      src/case/trigger/trigger.editor.js
  11. 1
      src/component/allvaluechooser/combo.allvaluechooser.js
  12. 20
      src/core/2.base.js
  13. 6
      src/core/4.widget.js
  14. 46
      src/core/5.inject.js
  15. 4
      src/core/6.plugin.js
  16. 2
      src/core/controller/controller.layer.js
  17. 2
      src/core/listener/listener.show.js
  18. 27
      src/core/platform/web/dom.js
  19. 15
      src/core/structure/tree.js
  20. 4
      src/core/wrapper/layout/adapt/absolute.leftrightvertical.js
  21. 70
      src/core/wrapper/layout/adapt/adapt.leftrightvertical.js
  22. 4
      src/core/wrapper/layout/fill/float.fill.horizontal.js
  23. 2
      src/core/wrapper/layout/flex/flex.leftrightvertical.center.js
  24. 4
      src/core/wrapper/layout/float/float.absolute.leftrightvertical.js
  25. 2
      src/core/wrapper/layout/layout.border.js
  26. 8
      src/core/wrapper/layout/layout.card.js
  27. 22
      src/core/wrapper/layout/layout.division.js
  28. 8
      src/core/wrapper/layout/layout.grid.js
  29. 4
      src/core/wrapper/layout/layout.tape.js
  30. 20
      src/core/wrapper/layout/layout.window.js
  31. 2
      src/core/wrapper/layout/middle/middle.center.js
  32. 2
      src/core/wrapper/layout/middle/middle.float.center.js
  33. 2
      src/core/wrapper/layout/middle/middle.horizontal.js
  34. 2
      src/core/wrapper/layout/middle/middle.vertical.js
  35. 7
      src/less/base/single/text.less
  36. 58
      src/widget/multiselect/loader.js
  37. 2
      src/widget/textvaluedownlistcombo/combo.textvaluedownlist.js
  38. 2
      webpack/webpack.prod.js

2
package.json

@ -1,6 +1,6 @@
{
"name": "fineui",
"version": "2.0.20230314171452",
"version": "2.0.20230413101426",
"description": "fineui",
"main": "dist/fineui_without_conflict.min.js",
"types": "dist/lib/index.d.ts",

2
src/base/collection/collection.js

@ -300,7 +300,7 @@ BI.CollectionView = BI.inherit(BI.Widget, {
var o = this.options;
// 兼容一下
var scrollable = o.scrollable, scrolly = o.scrolly;
if (o.overflowX === false) {
if (o.overflowY === false) {
return false;
}
if (scrolly) {

10
src/base/combination/group.combo.js

@ -22,9 +22,11 @@ BI.ComboGroup = BI.inherit(BI.Widget, {
el: {
type: "bi.button_tree",
chooseType: 0,
layouts: [{
type: "bi.vertical",
}],
layouts: [
{
type: "bi.vertical",
}
],
},
},
});
@ -38,7 +40,7 @@ BI.ComboGroup = BI.inherit(BI.Widget, {
var self = this, o = this.options;
var children = o.items;
if (BI.isEmpty(children)) {
throw new Error("ComboGroup构造错误");
throw new Error("ComboGroup create items error");
}
BI.each(children, function (i, ch) {
var son = BI.formatEL(ch).el.children;

64
src/base/combination/loader.js

@ -38,19 +38,23 @@ BI.Loader = BI.inherit(BI.Widget, {
_prevLoad: function () {
var self = this, o = this.options;
this.prev.setLoading();
o.itemsCreator.apply(this, [{ times: --this.times }, function () {
self.prev.setLoaded();
self.prependItems.apply(self, arguments);
}]);
o.itemsCreator.apply(this, [
{ times: --this.times }, function () {
self.prev.setLoaded();
self.prependItems.apply(self, arguments);
}
]);
},
_nextLoad: function () {
var self = this, o = this.options;
this.next.setLoading();
o.itemsCreator.apply(this, [{ times: ++this.times }, function () {
self.next.setLoaded();
self.addItems.apply(self, arguments);
}]);
o.itemsCreator.apply(this, [
{ times: ++this.times }, function () {
self.next.setLoaded();
self.addItems.apply(self, arguments);
}
]);
},
render: function () {
@ -75,9 +79,11 @@ BI.Loader = BI.inherit(BI.Widget, {
chooseType: 0,
items: o.items,
behaviors: {},
layouts: [{
type: "bi.vertical",
}],
layouts: [
{
type: "bi.vertical",
}
],
value: o.value,
});
this.button_group.on(BI.Controller.EVENT_CHANGE, function (type, value, obj) {
@ -123,10 +129,12 @@ BI.Loader = BI.inherit(BI.Widget, {
return this.count < o.count;
}
return !!o.hasPrev.apply(this, [{
times: this.times,
count: this.count,
}]);
return !!o.hasPrev.apply(this, [
{
times: this.times,
count: this.count,
}
]);
},
hasNext: function () {
@ -135,10 +143,12 @@ BI.Loader = BI.inherit(BI.Widget, {
return this.count < o.count;
}
return !!o.hasNext.apply(this, [{
times: this.times,
count: this.count,
}]);
return !!o.hasNext.apply(this, [
{
times: this.times,
count: this.count,
}
]);
},
prependItems: function (items) {
@ -170,13 +180,15 @@ BI.Loader = BI.inherit(BI.Widget, {
_populate: function (items) {
var self = this, o = this.options;
if (arguments.length === 0 && (BI.isFunction(o.itemsCreator))) {
o.itemsCreator.apply(this, [{ times: 1 }, function () {
if (arguments.length === 0) {
throw new Error("参数不能为空");
o.itemsCreator.apply(this, [
{ times: 1 }, function () {
if (arguments.length === 0) {
throw new Error("Parameter cannot be empty");
}
self.populate.apply(self, arguments);
o.onLoaded();
}
self.populate.apply(self, arguments);
o.onLoaded();
}]);
]);
return false;
}
@ -198,7 +210,7 @@ BI.Loader = BI.inherit(BI.Widget, {
this.prev.invisible();
}
}
return true;
},

2
src/base/combination/searcher.js

@ -230,7 +230,7 @@ BI.Searcher = BI.inherit(BI.Widget, {
this.editor.blur();
} catch (e) {
if (!this.editor.blur) {
throw new Error("editor没有实现blur方法");
throw new Error("The editor does not implement the blur method ");
}
} finally {
this.editor.setValue("");

26
src/base/pager/pager.js

@ -10,11 +10,13 @@ BI.Pager = BI.inherit(BI.Widget, {
return BI.extend(BI.Pager.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-pager",
behaviors: {},
layouts: [{
type: "bi.horizontal",
hgap: 10,
vgap: 0,
}],
layouts: [
{
type: "bi.horizontal",
hgap: 10,
vgap: 0,
}
],
dynamicShow: true, // 是否动态显示上一页、下一页、首页、尾页, 若为false,则指对其设置使能状态
// dynamicShow为false时以下两个有用
@ -28,8 +30,8 @@ BI.Pager = BI.inherit(BI.Widget, {
jump: BI.emptyFn, // 分页的回调函数
first: false, // 是否显示首页
last: false, // 是否显示尾页
prev: "上一页",
next: "下一页",
prev: BI.i18nText("BI-Previous_Page"),
next: BI.i18nText("BI-Next_Page"),
firstPage: 1,
lastPage: function () { // 在万不得已时才会调用这个函数获取最后一页的页码, 主要作用于setValue方法
@ -217,10 +219,12 @@ BI.Pager = BI.inherit(BI.Widget, {
self.currPage = v;
break;
}
o.jump.apply(self, [{
pages: pages,
curr: self.currPage,
}]);
o.jump.apply(self, [
{
pages: pages,
curr: self.currPage,
}
]);
self._populate();
self.fireEvent(BI.Pager.EVENT_CHANGE, obj);
}

8
src/base/single/input/input.js

@ -102,7 +102,7 @@ BI.Input = BI.inherit(BI.Single, {
blur();
}
function blur () {
function blur() {
if (!self.isValid() && self.options.quitChecker.apply(self, [BI.trim(self.getValue())]) !== false) {
self.element.val(self._lastValidValue ? self._lastValidValue : "");
self._checkValidationOnValueChange();
@ -236,7 +236,7 @@ BI.Input = BI.inherit(BI.Single, {
focus: function () {
if (!this.element.is(":visible")) {
throw new Error("input输入框在不可见下不能focus");
throw new Error("input cannot be focus when it's invisible");
}
if (!this._isEditing === true) {
this.element.focus();
@ -246,7 +246,7 @@ BI.Input = BI.inherit(BI.Single, {
blur: function () {
if (!this.element.is(":visible")) {
throw new Error("input输入框在不可见下不能blur");
throw new Error("input cannot be blur when it's invisible");
}
if (this._isEditing === true) {
this.element.blur();
@ -256,7 +256,7 @@ BI.Input = BI.inherit(BI.Single, {
selectAll: function () {
if (!this.element.is(":visible")) {
throw new Error("input输入框在不可见下不能select");
throw new Error("input cannot be select when it's invisible");
}
this.element.select();
this._isEditing = true;

20
src/case/layer/pane.list.js

@ -60,9 +60,11 @@ BI.ListPane = BI.inherit(BI.Pane, {
});
},
hasNext: o.hasNext,
layouts: [{
type: "bi.vertical"
}]
layouts: [
{
type: "bi.vertical"
}
]
});
this.button_group.on(BI.Controller.EVENT_CHANGE, function (type, value, obj) {
@ -118,12 +120,14 @@ BI.ListPane = BI.inherit(BI.Pane, {
populate: function (items) {
var self = this, o = this.options;
if (arguments.length === 0 && (BI.isFunction(this.button_group.attr("itemsCreator")))) {// 接管loader的populate方法
this.button_group.attr("itemsCreator").apply(this, [{ times: 1 }, function () {
if (arguments.length === 0) {
throw new Error("参数不能为空");
this.button_group.attr("itemsCreator").apply(this, [
{ times: 1 }, function () {
if (arguments.length === 0) {
throw new Error("Parameter cannot be empty");
}
self.populate.apply(self, arguments);
}
self.populate.apply(self, arguments);
}]);
]);
return;
}

44
src/case/loader/loader.list.js

@ -31,10 +31,12 @@ BI.ListLoader = BI.inherit(BI.Widget, {
_nextLoad: function () {
var self = this, o = this.options;
this.next.setLoading();
o.itemsCreator.apply(this, [{times: ++this.times}, function () {
self.next.setLoaded();
self.addItems.apply(self, arguments);
}]);
o.itemsCreator.apply(this, [
{ times: ++this.times }, function () {
self.next.setLoaded();
self.addItems.apply(self, arguments);
}
]);
},
_init: function () {
@ -50,9 +52,11 @@ BI.ListLoader = BI.inherit(BI.Widget, {
chooseType: 0,
items: o.items,
behaviors: {},
layouts: [{
type: "bi.vertical"
}]
layouts: [
{
type: "bi.vertical"
}
]
});
this.button_group.on(BI.Controller.EVENT_CHANGE, function (type, value, obj) {
self.fireEvent(BI.Controller.EVENT_CHANGE, arguments);
@ -91,10 +95,12 @@ BI.ListLoader = BI.inherit(BI.Widget, {
if (BI.isNumber(o.count)) {
return this.count < o.count;
}
return !!o.hasNext.apply(this, [{
times: this.times,
count: this.count
}]);
return !!o.hasNext.apply(this, [
{
times: this.times,
count: this.count
}
]);
},
addItems: function (items) {
@ -114,13 +120,15 @@ BI.ListLoader = BI.inherit(BI.Widget, {
populate: function (items) {
var self = this, o = this.options;
if (arguments.length === 0 && (BI.isFunction(o.itemsCreator))) {
o.itemsCreator.apply(this, [{times: 1}, function () {
if (arguments.length === 0) {
throw new Error("参数不能为空");
o.itemsCreator.apply(this, [
{ times: 1 }, function () {
if (arguments.length === 0) {
throw new Error("Parameter cannot be empty");
}
self.populate.apply(self, arguments);
o.onLoaded();
}
self.populate.apply(self, arguments);
o.onLoaded();
}]);
]);
return;
}
this.options.items = items;
@ -193,4 +201,4 @@ BI.ListLoader = BI.inherit(BI.Widget, {
}
});
BI.ListLoader.EVENT_CHANGE = "EVENT_CHANGE";
BI.shortcut("bi.list_loader", BI.ListLoader);
BI.shortcut("bi.list_loader", BI.ListLoader);

2
src/case/trigger/trigger.editor.js

@ -9,7 +9,7 @@ BI.EditorTrigger = BI.inherit(BI.Trigger, {
_defaultConfig: function (config) {
var conf = BI.EditorTrigger.superclass._defaultConfig.apply(this, arguments);
return BI.extend(conf, {
baseCls: (conf.baseCls || "") + " bi-editor-trigger bi-border-radius " + (config.simple ? "bi-border-bottom" : "bi-border"),
baseCls: (conf.baseCls || "") + " bi-editor-trigger " + (config.simple ? "bi-border-bottom" : "bi-border bi-border-radius"),
height: 24,
validationChecker: BI.emptyFn,
quitChecker: BI.emptyFn,

1
src/component/allvaluechooser/combo.allvaluechooser.js

@ -34,6 +34,7 @@ BI.AllValueChooserCombo = BI.inherit(BI.AbstractAllValueChooser, {
valueFormatter: BI.bind(this._valueFormatter, this),
width: o.width,
height: o.height,
defaultText: o.defaultText,
value: this._assertValue({
type: BI.Selection.Multi,
value: o.value || []

20
src/core/2.base.js

@ -61,7 +61,7 @@
createWidgets: function (items, options, context) {
if (!BI.isArray(items)) {
throw new Error("items必须是数组", items);
throw new Error("items must be array", items);
}
if (BI.isWidget(options)) {
context = options;
@ -149,8 +149,10 @@
BI._.each(["where", "findWhere", "invoke", "pluck", "shuffle", "sample", "toArray", "size"], function (name) {
BI[name] = _apply(name);
});
BI._.each(["get", "set", "each", "map", "reduce", "reduceRight", "find", "filter", "reject", "every", "all", "some", "any", "max", "min",
"sortBy", "groupBy", "indexBy", "countBy", "partition", "clamp"], function (name) {
BI._.each([
"get", "set", "each", "map", "reduce", "reduceRight", "find", "filter", "reject", "every", "all", "some", "any", "max", "min",
"sortBy", "groupBy", "indexBy", "countBy", "partition", "clamp"
], function (name) {
if (name === "any") {
BI[name] = _applyFunc("some");
} else {
@ -347,8 +349,10 @@
});
// 数组相关的方法
BI._.each(["first", "initial", "last", "rest", "compact", "flatten", "without", "union", "intersection",
"difference", "zip", "unzip", "object", "indexOf", "lastIndexOf", "sortedIndex", "range", "take", "takeRight", "uniqBy"], function (name) {
BI._.each([
"first", "initial", "last", "rest", "compact", "flatten", "without", "union", "intersection",
"difference", "zip", "unzip", "object", "indexOf", "lastIndexOf", "sortedIndex", "range", "take", "takeRight", "uniqBy"
], function (name) {
BI[name] = _apply(name);
});
BI._.each(["findIndex", "findLastIndex"], function (name) {
@ -412,10 +416,12 @@
});
// 对象相关方法
BI._.each(["keys", "allKeys", "values", "pairs", "invert", "create", "functions", "extend", "extendOwn",
BI._.each([
"keys", "allKeys", "values", "pairs", "invert", "create", "functions", "extend", "extendOwn",
"defaults", "clone", "property", "propertyOf", "matcher", "isEqual", "isMatch", "isEmpty",
"isElement", "isNumber", "isString", "isArray", "isObject", "isPlainObject", "isArguments", "isFunction", "isFinite",
"isBoolean", "isDate", "isRegExp", "isError", "isNaN", "isUndefined", "zipObject", "cloneDeep"], function (name) {
"isBoolean", "isDate", "isRegExp", "isError", "isNaN", "isUndefined", "zipObject", "cloneDeep"
], function (name) {
BI[name] = _apply(name);
});
BI._.each(["mapObject", "findKey", "pick", "omit", "tap"], function (name) {

6
src/core/4.widget.js

@ -129,7 +129,7 @@
function init() {
// 加个保险
if (initCallbackCalled === true) {
_global.console && console.error("组件: 请检查beforeInit内部的写法,callback只能执行一次");
_global.console && console.error("widget:please check the beforeInit method. The callback can only be executed once");
return;
}
initCallbackCalled = true;
@ -137,7 +137,7 @@
function render() {
// 加个保险
if (renderCallbackCalled === true) {
_global.console && console.error("组件: 请检查beforeRender内部的写法,callback只能执行一次");
_global.console && console.error("widget:please check the beforeRender method. The callback can only be executed once");
return;
}
renderCallbackCalled = true;
@ -607,7 +607,7 @@
}
name = name || widget.getName() || BI.uniqueId("widget");
if (this._children[name]) {
throw new Error("组件:组件名已存在,不能进行添加");
throw new Error("widget:widget name already exists, cannot be added ");
}
widget._setParent && widget._setParent(this);
widget.on(BI.Events.DESTROY, function () {

46
src/core/5.inject.js

@ -9,7 +9,7 @@
};
BI.module = BI.module || function (xtype, cls) {
if (moduleInjection[xtype] != null) {
_global.console && console.error("module: [" + xtype + "] 已经注册过了");
_global.console && console.error("module: [" + xtype + "] already registered");
} else {
if (BI.isFunction(cls)) {
cls = cls();
@ -41,7 +41,7 @@
var constantInjection = {};
BI.constant = BI.constant || function (xtype, cls) {
if (constantInjection[xtype] != null) {
_global.console && console.error("constant: [" + xtype + "]已经注册过了");
_global.console && console.error("constant: [" + xtype + "]already registered");
} else {
constantInjection[xtype] = cls;
}
@ -54,7 +54,7 @@
var modelInjection = {};
BI.model = BI.model || function (xtype, cls) {
if (modelInjection[xtype] != null) {
_global.console && console.error("model: [" + xtype + "] 已经注册过了");
_global.console && console.error("model: [" + xtype + "] already registered");
} else {
modelInjection[xtype] = cls;
}
@ -67,7 +67,7 @@
var storeInjection = {};
BI.store = BI.store || function (xtype, cls) {
if (storeInjection[xtype] != null) {
_global.console && console.error("store: [" + xtype + "] 已经注册过了");
_global.console && console.error("store: [" + xtype + "] already registered");
} else {
storeInjection[xtype] = cls;
}
@ -80,7 +80,7 @@
var serviceInjection = {};
BI.service = BI.service || function (xtype, cls) {
if (serviceInjection[xtype] != null) {
_global.console && console.error("service: [" + xtype + "] 已经注册过了");
_global.console && console.error("service: [" + xtype + "] already registered");
}
serviceInjection[xtype] = cls;
@ -93,7 +93,7 @@
var providerInjection = {};
BI.provider = BI.provider || function (xtype, cls) {
if (providerInjection[xtype] != null) {
_global.console && console.error("provider: [" + xtype + "] 已经注册过了");
_global.console && console.error("provider: [" + xtype + "] already registered");
} else {
providerInjection[xtype] = cls;
}
@ -151,7 +151,7 @@
}
}
if (findVersion === true) {
_global.console && console.error("moduleId: [" + module.moduleId + "] 接口: [" + type + "] 接口版本: [" + version + "] 已过期,版本要求为:", dependencies[module.moduleId], "=>", moduleInjection[module.moduleId]);
_global.console && console.error("moduleId: [" + module.moduleId + "] interface : [" + type + "] version: [" + version + "] has expired,The version requirement is:", dependencies[module.moduleId], "=>", moduleInjection[module.moduleId]);
continue;
}
}
@ -251,7 +251,7 @@
BI.Modules = BI.Modules || {
getModule: function (type) {
if (!moduleInjection[type]) {
_global.console && console.error("module: [" + type + "] 未定义");
_global.console && console.error("module: [" + type + "] undefined");
}
return moduleInjection[type];
},
@ -263,7 +263,7 @@
BI.Constants = BI.Constants || {
getConstant: function (type) {
if (BI.isNull(constantInjection[type])) {
_global.console && console.error("constant: [" + type + "] 未定义");
_global.console && console.error("constant: [" + type + "] undefined");
}
runConfigFunction(type);
return BI.isFunction(constantInjection[type]) ? constantInjection[type]() : constantInjection[type];
@ -311,7 +311,7 @@
BI.Models = BI.Models || {
getModel: function (type, config) {
if (!modelInjection[type]) {
_global.console && console.error("model: [" + type + "] 未定义");
_global.console && console.error("model: [" + type + "] undefined");
}
runConfigFunction(type);
var inst = new modelInjection[type](config);
@ -327,7 +327,7 @@
BI.Stores = BI.Stores || {
getStore: function (type, config) {
if (!storeInjection[type]) {
_global.console && console.error("store: [" + type + "] 未定义");
_global.console && console.error("store: [" + type + "] undefined");
}
if (stores[type]) {
return stores[type];
@ -346,7 +346,7 @@
BI.Services = BI.Services || {
getService: function (type, config) {
if (!serviceInjection[type]) {
_global.console && console.error("service: [" + type + "] 未定义");
_global.console && console.error("service: [" + type + "] undefined");
}
if (services[type]) {
return services[type];
@ -363,7 +363,7 @@
BI.Providers = BI.Providers || {
getProvider: function (type, config) {
if (!providerInjection[type]) {
_global.console && console.error("provider: [" + type + "] 未定义");
_global.console && console.error("provider: [" + type + "] undefined");
}
runConfigFunction(type);
if (!providers[type]) {
@ -401,7 +401,7 @@
var kv = {};
BI.shortcut = BI.component = BI.shortcut || function (xtype, cls) {
if (kv[xtype] != null) {
_global.console && console.error("组件: [" + xtype + "] 已经注册过了");
_global.console && console.error("widget: [" + xtype + "] already registered");
}
if (cls) {
cls["xtype"] = xtype;
@ -414,7 +414,7 @@
var cls = BI.isFunction(config.type) ? config.type : kv[config.type];
if (!cls) {
throw new Error("组件: [" + config.type + "] 未定义");
throw new Error("widget: [" + config.type + "] undefined");
}
var pushed = false;
var widget = new cls();
@ -472,12 +472,14 @@
if (wType === elType) {
if (BI.Plugin.hasObject(elType)) {
if (!w.listeners || BI.isArray(w.listeners)) {
w.listeners = (w.listeners || []).concat([{
eventName: BI.Events.MOUNT,
action: function () {
BI.Plugin.getObject(elType, this);
w.listeners = (w.listeners || []).concat([
{
eventName: BI.Events.MOUNT,
action: function () {
BI.Plugin.getObject(elType, this);
}
}
}]);
]);
} else {
w.listeners[BI.Events.MOUNT] = [
function () {
@ -493,7 +495,7 @@
if (BI.isWidget(item.el)) {
return item.el;
}
throw new Error("组件:无法根据item创建组件", item);
throw new Error("widget: Unable to create widget from item ", item);
};
BI._lazyCreateWidget = BI._lazyCreateWidget || function (item, options, context) {
@ -521,6 +523,6 @@
if (providerInjection[type]) {
return BI.Providers.getProvider(type, config);
}
throw new Error("未知类型: [" + type + "] 未定义");
throw new Error("unknown type: [" + type + "] undefined");
};
})();

4
src/core/6.plugin.js

@ -73,7 +73,7 @@ BI.Plugin = BI.Plugin || {};
_WidgetsPlugin[type] = [];
}
if (_WidgetsPlugin[type].length > 0) {
console.log("组件已经注册过了!");
console.log("widget already registered!");
}
_WidgetsPlugin[type].push(fn);
},
@ -111,7 +111,7 @@ BI.Plugin = BI.Plugin || {};
_ObjectPlugin[type] = [];
}
if (_ObjectPlugin[type].length > 0) {
console.log("对象已经注册过了!");
console.log("object already registered!");
}
_ObjectPlugin[type].push(fn);
},

2
src/core/controller/controller.layer.js

@ -141,7 +141,7 @@ BI.LayerController = BI.inherit(BI.Controller, {
add: function (name, layer, layout) {
if (this.has(name)) {
throw new Error("不能创建同名的Layer");
throw new Error("can not create Layers with the same name");
}
layout.setVisible(false);
this.layerManager[name] = layer;

2
src/core/listener/listener.show.js

@ -27,7 +27,7 @@ BI.ShowListener = BI.inherit(BI.OB, {
v = v || o.eventObj.getValue();
v = BI.isArray(v) ? (v.length > 1 ? v.toString() : v[0]) : v;
if (BI.isNull(v)) {
throw new Error("不能为null");
throw new Error("canot be null");
}
var cardName = o.cardNameCreator(v);
if (!o.cardLayout.isCardExisted(cardName)) {

27
src/core/platform/web/dom.js

@ -23,7 +23,7 @@
});
var fromChildren = fromElement.children(), toChildren = toElement.children();
if (fromChildren.length !== toChildren.length) {
throw new Error("不匹配");
throw new Error("don't match");
}
BI.each(fromChildren, function (i, child) {
BI.DOM.patchProps(BI.jQuery(child), BI.jQuery(toChildren[i]));
@ -108,12 +108,13 @@
},
// 获取滚动条的宽度,页面display: none时候获取到的为0
getScrollWidth: function () {
getScrollWidth: function (css) {
if (BI.isNull(this._scrollWidth) || this._scrollWidth === 0) {
var ul = BI.Widget._renderEngine.createElement("<div>").width(50).height(50).css({
position: "absolute",
top: "-9999px",
overflow: "scroll"
overflow: "scroll",
...css
}).appendTo("body");
this._scrollWidth = ul[0].offsetWidth - ul[0].clientWidth;
ul.destroy();
@ -156,7 +157,7 @@
var popupEl = popup.element;
var elRect = el[0].getBoundingClientRect();
var popupElRect = popupEl[0].getBoundingClientRect();
var containerRect = container ? container.getBoundingClientRect() : { left: 0 };
var containerRect = container ? container.getBoundingClientRect() : {left: 0};
return {
left: elRect.left - containerRect.left - popupElRect.width - (extraWidth || 0)
@ -172,7 +173,7 @@
getRightPosition: function (combo, popup, extraWidth, container) {
var el = combo.element;
var elRect = el[0].getBoundingClientRect();
var containerRect = container ? container.getBoundingClientRect() : { left: 0 };
var containerRect = container ? container.getBoundingClientRect() : {left: 0};
return {
left: elRect.left + elRect.width - containerRect.left + (extraWidth || 0)
@ -191,7 +192,7 @@
var popupEl = popup.element;
var elRect = el[0].getBoundingClientRect();
var popupElRect = popupEl[0].getBoundingClientRect();
var containerRect = container ? container.getBoundingClientRect() : { top: 0 };
var containerRect = container ? container.getBoundingClientRect() : {top: 0};
return {
top: elRect.top - containerRect.top - popupElRect.height - (extraHeight || 0)
@ -201,7 +202,7 @@
getBottomPosition: function (combo, popup, extraHeight, container) {
var el = combo.element;
var elRect = el[0].getBoundingClientRect();
var containerRect = container ? container.getBoundingClientRect() : { top: 0 };
var containerRect = container ? container.getBoundingClientRect() : {top: 0};
return {
top: elRect.top - containerRect.top + elRect.height + (extraHeight || 0)
@ -254,7 +255,7 @@
var comboRect = combo.element[0].getBoundingClientRect(),
popupRect = popup.element[0].getBoundingClientRect(),
viewportRect = document.documentElement.getBoundingClientRect(),
containerRect = container ? container.getBoundingClientRect() : { left: 0 };
containerRect = container ? container.getBoundingClientRect() : {left: 0};
var left = comboRect.left - containerRect.left + extraWidth;
if (comboRect.left + popupRect.width > viewportRect.width) {
@ -267,7 +268,7 @@
var left = this._getLeftAlignPosition(combo, popup, extraWidth, container);
var dir = "";
// 如果放不下,优先使用RightAlign, 如果RightAlign也放不下, 再使用left=0
var containerRect = container ? container.getBoundingClientRect() : { left: 0 };
var containerRect = container ? container.getBoundingClientRect() : {left: 0};
if (left + containerRect.left < 0) {
left = this._getRightAlignPosition(combo, popup, extraWidth);
dir = "left";
@ -293,7 +294,7 @@
_getRightAlignPosition: function (combo, popup, extraWidth, container) {
var comboBounds = combo.element[0].getBoundingClientRect(),
viewBounds = popup.element[0].getBoundingClientRect(),
containerRect = container ? container.getBoundingClientRect() : { left: 0 };
containerRect = container ? container.getBoundingClientRect() : {left: 0};
return comboBounds.left + comboBounds.width - viewBounds.width - extraWidth - containerRect.left;
},
@ -327,7 +328,7 @@
var comboBounds = combo.element[0].getBoundingClientRect(),
popupBounds = popup.element[0].getBoundingClientRect(),
viewportBounds = document.documentElement.getBoundingClientRect(),
containerBounds = container ? container.getBoundingClientRect() : { top: 0 };
containerBounds = container ? container.getBoundingClientRect() : {top: 0};
var top, adaptHeight, dir;
if (BI.DOM.isBottomSpaceEnough(combo, popup, -1 * comboBounds.height + extraHeight)) {
top = comboBounds.top - containerBounds.top + extraHeight;
@ -386,7 +387,7 @@
var comboBounds = combo.element[0].getBoundingClientRect(),
popupBounds = popup.element[0].getBoundingClientRect(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds(),
containerBounds = container ? container.getBoundingClientRect() : { top: 0 };
containerBounds = container ? container.getBoundingClientRect() : {top: 0};
var top, adaptHeight, dir;
if (BI.DOM.isTopSpaceEnough(combo, popup, -1 * comboBounds.height + extraHeight)) {
top = comboBounds.top + comboBounds.height - containerBounds.top - popupBounds.height;
@ -746,7 +747,7 @@
*/
getPositionRelativeContainingBlockRect: function (element) {
const positionRelativeElement = BI.DOM.getPositionRelativeContainingBlock(element);
const { top, right, bottom, left, width, height, x, y } = positionRelativeElement.getBoundingClientRect();
const {top, right, bottom, left, width, height, x, y} = positionRelativeElement.getBoundingClientRect();
return {

15
src/core/structure/tree.js

@ -30,23 +30,26 @@
initTree: function (nodes) {
var self = this;
this.clear();
var queue = [];
var queue = new Set();
BI.each(nodes, function (i, node) {
var n = new BI.Node(node);
n.set("data", node);
self.addNode(n);
queue.push(n);
queue.add(n);
});
while (!BI.isEmpty(queue)) {
var parent = queue.shift();
queue.forEach(parent => {
queue.delete(parent);
var node = parent.get("data");
BI.each(node.children, function (i, child) {
var n = new BI.Node(child);
n.set("data", child);
queue.push(n);
queue.add(n);
self.addNode(parent, n);
});
}
});
},
_toJSON: function (node) {

4
src/core/wrapper/layout/adapt/absolute.leftrightvertical.js

@ -98,7 +98,7 @@ BI.AbsoluteLeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {
@ -149,7 +149,7 @@ BI.AbsoluteRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

70
src/core/wrapper/layout/adapt/adapt.leftrightvertical.js

@ -36,22 +36,24 @@ BI.LeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
type: "bi.left",
lgap: o.innerHgap,
vgap: o.innerVgap,
items: [{
el: {
type: "bi.vertical_adapt",
ref: function (_ref) {
self.left = _ref;
},
height: "100%",
items: leftRight.left || o.items.left,
hgap: o.lhgap,
lgap: o.llgap,
rgap: o.lrgap,
tgap: o.ltgap,
bgap: o.lbgap,
vgap: o.lvgap
items: [
{
el: {
type: "bi.vertical_adapt",
ref: function (_ref) {
self.left = _ref;
},
height: "100%",
items: leftRight.left || o.items.left,
hgap: o.lhgap,
lgap: o.llgap,
rgap: o.lrgap,
tgap: o.ltgap,
bgap: o.lbgap,
vgap: o.lvgap
}
}
}]
]
});
}
if (leftRight.right || "right" in o.items) {
@ -59,22 +61,24 @@ BI.LeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
type: "bi.right",
rgap: o.innerHgap,
vgap: o.innerVgap,
items: [{
el: {
type: "bi.vertical_adapt",
ref: function (_ref) {
self.right = _ref;
},
height: "100%",
items: leftRight.right || o.items.right,
hgap: o.rhgap,
lgap: o.rlgap,
rgap: o.rrgap,
tgap: o.rtgap,
bgap: o.rbgap,
vgap: o.rvgap
items: [
{
el: {
type: "bi.vertical_adapt",
ref: function (_ref) {
self.right = _ref;
},
height: "100%",
items: leftRight.right || o.items.right,
hgap: o.rhgap,
lgap: o.rlgap,
rgap: o.rrgap,
tgap: o.rtgap,
bgap: o.rbgap,
vgap: o.rvgap
}
}
}]
]
});
}
return layoutArray;
@ -106,7 +110,7 @@ BI.LeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {
@ -162,7 +166,7 @@ BI.LeftVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {
@ -216,7 +220,7 @@ BI.RightVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

4
src/core/wrapper/layout/fill/float.fill.horizontal.js

@ -25,7 +25,7 @@ BI.FloatHorizontalFillLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
stroke: function (items) {
@ -33,7 +33,7 @@ BI.FloatHorizontalFillLayout = BI.inherit(BI.Layout, {
items = BI.compact(items);
var rank = 0;
function createWidget (i, item, desc) {
function createWidget(i, item, desc) {
if (o.verticalAlign !== BI.VerticalAlign.Stretch) {
var w = BI._lazyCreateWidget({
type: "bi.vertical_adapt",

2
src/core/wrapper/layout/flex/flex.leftrightvertical.center.js

@ -94,7 +94,7 @@ BI.FlexLeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

4
src/core/wrapper/layout/float/float.absolute.leftrightvertical.js

@ -115,7 +115,7 @@ BI.FloatAbsoluteLeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {
@ -179,7 +179,7 @@ BI.FloatAbsoluteRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

2
src/core/wrapper/layout/layout.border.js

@ -22,7 +22,7 @@ BI.BorderLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
stroke: function (regions) {

8
src/core/wrapper/layout/layout.card.js

@ -81,7 +81,7 @@ BI.CardLayout = BI.inherit(BI.Layout, {
getCardByName: function (cardName) {
if (!this.isCardExisted(cardName)) {
throw new Error("cardName不存在", cardName);
throw new Error("cardName not exist", cardName);
}
return this._children[this._getChildName(cardName)];
},
@ -98,7 +98,7 @@ BI.CardLayout = BI.inherit(BI.Layout, {
deleteCardByName: function (cardName) {
if (!this.isCardExisted(cardName)) {
throw new Error("cardName不存在", cardName);
throw new Error("cardName not exist", cardName);
}
var child = this._children[this._getChildName(cardName)];
@ -108,7 +108,7 @@ BI.CardLayout = BI.inherit(BI.Layout, {
addCardByName: function (cardName, cardItem) {
if (this.isCardExisted(cardName)) {
throw new Error("cardName 已存在", cardName);
throw new Error("cardName already exist", cardName);
}
var widget = BI._lazyCreateWidget(cardItem, this);
widget.element.css({
@ -120,7 +120,7 @@ BI.CardLayout = BI.inherit(BI.Layout, {
}).appendTo(this.element);
widget.invisible();
this.addWidget(this._getChildName(cardName), widget);
this.options.items.push({el: cardItem, cardName: cardName});
this.options.items.push({ el: cardItem, cardName: cardName });
return widget;
},

22
src/core/wrapper/layout/layout.division.js

@ -24,7 +24,7 @@ BI.DivisionLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
stroke: function (items) {
@ -32,19 +32,19 @@ BI.DivisionLayout = BI.inherit(BI.Layout, {
var rows = o.rows || o.items.length, columns = o.columns || ((o.items[0] && o.items[0].length) | 0);
var map = BI.makeArray(rows), widths = {}, heights = {};
function firstElement (item, cls) {
function firstElement(item, cls) {
item.addClass(cls);
return item;
}
function firstObject (item, cls) {
function firstObject(item, cls) {
item.cls = (item.cls || "") + cls;
return item;
}
function first (item, cls) {
function first(item, cls) {
if (item instanceof BI.Widget) {
firstElement(item.element, cls);
} else if (item.el instanceof BI.Widget) {
@ -77,7 +77,7 @@ BI.DivisionLayout = BI.inherit(BI.Layout, {
var totalW = 0;
for (var j = 0; j < columns; j++) {
if (!map[i][j]) {
throw new Error("item(" + i + "" + j + ") 必须", map);
throw new Error("item(" + i + "" + j + ") must exist", map);
}
if (!this.hasWidget(this._getChildName(i + "_" + j))) {
var w = BI._lazyCreateWidget(map[i][j]);
@ -86,13 +86,13 @@ BI.DivisionLayout = BI.inherit(BI.Layout, {
w = this.getWidgetByName(this._getChildName(i + "_" + j));
}
var left = totalW * 100 / widths[i];
w.element.css({position: "absolute", left: left + "%"});
w.element.css({ position: "absolute", left: left + "%" });
if (j > 0) {
var lastW = this.getWidgetByName(this._getChildName(i + "_" + (j - 1)));
lastW.element.css({right: (100 - left) + "%"});
lastW.element.css({ right: (100 - left) + "%" });
}
if (j == o.columns - 1) {
w.element.css({right: "0%"});
w.element.css({ right: "0%" });
}
first(w, self.getRowColumnCls(i, j, rows - 1, columns - 1));
totalW += map[i][j].width;
@ -103,13 +103,13 @@ BI.DivisionLayout = BI.inherit(BI.Layout, {
for (var i = 0; i < o.rows; i++) {
var w = this.getWidgetByName(this._getChildName(i + "_" + j));
var top = totalH * 100 / heights[j];
w.element.css({top: top + "%"});
w.element.css({ top: top + "%" });
if (i > 0) {
var lastW = this.getWidgetByName(this._getChildName((i - 1) + "_" + j));
lastW.element.css({bottom: (100 - top) + "%"});
lastW.element.css({ bottom: (100 - top) + "%" });
}
if (i == o.rows - 1) {
w.element.css({bottom: "0%"});
w.element.css({ bottom: "0%" });
}
totalH += map[i][j].height;
}

8
src/core/wrapper/layout/layout.grid.js

@ -24,7 +24,7 @@ BI.GridLayout = BI.inherit(BI.Layout, {
addItem: function () {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
stroke: function (items) {
@ -36,19 +36,19 @@ BI.GridLayout = BI.inherit(BI.Layout, {
els[i] = [];
}
function firstElement (item, cls) {
function firstElement(item, cls) {
item.addClass(cls);
return item;
}
function firstObject (item, cls) {
function firstObject(item, cls) {
item.cls = (item.cls || "") + cls;
return item;
}
function first (item, row, col) {
function first(item, row, col) {
if (item instanceof BI.Widget) {
firstElement(item.element, row, col);
} else if (item.el instanceof BI.Widget) {

4
src/core/wrapper/layout/layout.tape.js

@ -29,7 +29,7 @@ BI.HTapeLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
stroke: function (items) {
@ -154,7 +154,7 @@ BI.VTapeLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
stroke: function (items) {

20
src/core/wrapper/layout/layout.window.js

@ -31,7 +31,7 @@ BI.WindowLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
stroke: function (items) {
@ -43,19 +43,19 @@ BI.WindowLayout = BI.inherit(BI.Layout, {
o.columnSize = BI.makeArray(o.items[0].length, 1 / o.items[0].length);
}
function firstElement (item, cls) {
function firstElement(item, cls) {
item.addClass(cls);
return item;
}
function firstObject (item, cls) {
function firstObject(item, cls) {
item.cls = (item.cls || "") + cls;
return item;
}
function first (item, row, col) {
function first(item, row, col) {
if (item instanceof BI.Widget) {
firstElement(item.element, row, col);
} else if (item.el instanceof BI.Widget) {
@ -70,11 +70,11 @@ BI.WindowLayout = BI.inherit(BI.Layout, {
for (var i = 0; i < o.rows; i++) {
for (var j = 0; j < o.columns; j++) {
if (!o.items[i][j]) {
throw new Error("构造错误", o.items);
throw new Error("create items error", o.items);
}
if (!this.hasWidget(this._getChildName(i + "_" + j))) {
var w = BI._lazyCreateWidget(o.items[i][j]);
w.element.css({position: "absolute"});
w.element.css({ position: "absolute" });
this.addWidget(this._getChildName(i + "_" + j), w);
}
}
@ -95,7 +95,7 @@ BI.WindowLayout = BI.inherit(BI.Layout, {
if (BI.isNumber(o.rowSize[i])) {
h = this._optimiseGap(o.rowSize[i]);
}
wi.element.css({top: t, height: h});
wi.element.css({ top: t, height: h });
first(wi, self.getRowColumnCls(i, j, o.rows - 1, o.columns - 1));
}
if (!BI.isNumber(o.rowSize[i])) {
@ -113,7 +113,7 @@ BI.WindowLayout = BI.inherit(BI.Layout, {
if (BI.isNumber(o.rowSize[i])) {
h = this._optimiseGap(o.rowSize[i]);
}
wi.element.css({bottom: b, height: h});
wi.element.css({ bottom: b, height: h });
first(wi, self.getRowColumnCls(i, j, o.rows - 1, o.columns - 1));
}
if (!BI.isNumber(o.rowSize[i])) {
@ -131,7 +131,7 @@ BI.WindowLayout = BI.inherit(BI.Layout, {
if (BI.isNumber(o.columnSize[j])) {
w = this._optimiseGap(o.columnSize[j]);
}
wi.element.css({left: l, width: w});
wi.element.css({ left: l, width: w });
first(wi, self.getRowColumnCls(i, j, o.rows - 1, o.columns - 1));
}
if (!BI.isNumber(o.columnSize[j])) {
@ -149,7 +149,7 @@ BI.WindowLayout = BI.inherit(BI.Layout, {
if (BI.isNumber(o.columnSize[j])) {
w = this._optimiseGap(o.columnSize[j]);
}
wi.element.css({right: r, width: w});
wi.element.css({ right: r, width: w });
first(wi, self.getRowColumnCls(i, j, o.rows - 1, o.columns - 1));
}
if (!BI.isNumber(o.columnSize[j])) {

2
src/core/wrapper/layout/middle/middle.center.js

@ -62,7 +62,7 @@ BI.CenterLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

2
src/core/wrapper/layout/middle/middle.float.center.js

@ -61,7 +61,7 @@ BI.FloatCenterLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

2
src/core/wrapper/layout/middle/middle.horizontal.js

@ -60,7 +60,7 @@ BI.HorizontalCenterLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

2
src/core/wrapper/layout/middle/middle.vertical.js

@ -61,7 +61,7 @@ BI.VerticalCenterLayout = BI.inherit(BI.Layout, {
addItem: function (item) {
// do nothing
throw new Error("不能添加子组件");
throw new Error("Cannot add subwidget");
},
populate: function (items) {

7
src/less/base/single/text.less

@ -3,5 +3,8 @@
.bi-text {
.overflow-hidden();
.box-sizing(border-box);
word-break: break-all;
}
// https://developer.mozilla.org/en-US/docs/Web/CSS/word-break 参考mdn最标准的规范. 不再接受任何质疑
word-break: normal;
overflow-wrap: anywhere;
}

58
src/widget/multiselect/loader.js

@ -26,9 +26,11 @@ BI.MultiSelectInnerLoader = BI.inherit(BI.Widget, {
return true;
}
},
layouts: [{
type: "bi.vertical"
}]
layouts: [
{
type: "bi.vertical"
}
]
},
items: [],
@ -53,10 +55,12 @@ BI.MultiSelectInnerLoader = BI.inherit(BI.Widget, {
this.cachItems = this.cachItems.slice(100);
return;
}
o.itemsCreator.apply(this, [{times: ++this.times}, function () {
self.next.setLoaded();
self.addItems.apply(self, arguments);
}]);
o.itemsCreator.apply(this, [
{ times: ++this.times }, function () {
self.next.setLoaded();
self.addItems.apply(self, arguments);
}
]);
},
render: function () {
@ -69,9 +73,11 @@ BI.MultiSelectInnerLoader = BI.inherit(BI.Widget, {
chooseType: 0,
items: o.items,
behaviors: {},
layouts: [{
type: "bi.vertical"
}],
layouts: [
{
type: "bi.vertical"
}
],
value: o.value
});
this.button_group.on(BI.Controller.EVENT_CHANGE, function (type, value, obj) {
@ -95,9 +101,11 @@ BI.MultiSelectInnerLoader = BI.inherit(BI.Widget, {
chooseType: 0,
items: o.items,
behaviors: {},
layouts: [{
type: "bi.vertical"
}],
layouts: [
{
type: "bi.vertical"
}
],
value: o.value
});
BI.Widget.registerRenderEngine(renderEngine);
@ -132,10 +140,12 @@ BI.MultiSelectInnerLoader = BI.inherit(BI.Widget, {
if (this.cachItems && this.cachItems.length > 0) {
return true;
}
return !!o.hasNext.apply(this, [{
times: this.times,
count: this.count
}]);
return !!o.hasNext.apply(this, [
{
times: this.times,
count: this.count
}
]);
},
addItems: function (items) {
@ -158,13 +168,15 @@ BI.MultiSelectInnerLoader = BI.inherit(BI.Widget, {
_populate: function (items) {
var self = this, o = this.options;
if (arguments.length === 0 && (BI.isFunction(o.itemsCreator))) {
o.itemsCreator.apply(this, [{times: 1}, function (items, keyword) {
if (arguments.length === 0) {
throw new Error("参数不能为空");
o.itemsCreator.apply(this, [
{ times: 1 }, function (items, keyword) {
if (arguments.length === 0) {
throw new Error("Parameter cannot be empty");
}
self.populate.apply(self, arguments);
o.onLoaded();
}
self.populate.apply(self, arguments);
o.onLoaded();
}]);
]);
return false;
}
this.options.items = (items || []).slice(0, 100 + (items || []).length % 100);

2
src/widget/textvaluedownlistcombo/combo.textvaluedownlist.js

@ -5,7 +5,7 @@
BI.TextValueDownListCombo = BI.inherit(BI.Widget, {
_defaultConfig: function (config) {
return BI.extend(BI.TextValueDownListCombo.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-text-value-down-list-combo bi-border-radius " + (config.simple ? "bi-border-bottom" : "bi-border"),
baseCls: "bi-text-value-down-list-combo " + (config.simple ? "bi-border-bottom" : "bi-border bi-border-radius"),
height: 24,
});
},

2
webpack/webpack.prod.js

@ -72,7 +72,7 @@ module.exports = merge.smart(common, {
}
}),
new webpack.BannerPlugin({
banner: `time: ${new Date().toLocaleString()}; branch: ${git(
banner: `time: ${new Date().toLocaleString("en-US")}; branch: ${git(
'name-rev --name-only HEAD'
)} commit: ${git(
'rev-parse HEAD'

Loading…
Cancel
Save