|
|
|
@ -1,5 +1,5 @@
|
|
|
|
|
// 工程配置
|
|
|
|
|
BI.prepares.push(function () { |
|
|
|
|
!(function () { |
|
|
|
|
// 注册布局
|
|
|
|
|
// adapt类布局优先级规则
|
|
|
|
|
// 1、支持flex的浏览器下使用flex布局
|
|
|
|
@ -39,16 +39,16 @@ BI.prepares.push(function () {
|
|
|
|
|
// return BI.extend({}, ob, {type: "bi.table_adapt"});
|
|
|
|
|
// }
|
|
|
|
|
if (supportFlex) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_horizontal"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_horizontal" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({ |
|
|
|
|
scrollx: true |
|
|
|
|
}, ob, {type: "bi.inline"}); |
|
|
|
|
}, ob, { type: "bi.inline" }); |
|
|
|
|
}); |
|
|
|
|
BI.Plugin.configWidget("bi.vertical", function (ob) { |
|
|
|
|
if (ob.horizontalAlign === BI.HorizontalAlign.Left || ob.horizontalAlign === BI.HorizontalAlign.Right) { |
|
|
|
|
if (isSupportFlex()) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_vertical"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_vertical" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({}, ob, { |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Stretch, |
|
|
|
@ -88,14 +88,14 @@ BI.prepares.push(function () {
|
|
|
|
|
if ((ob.scrollable !== true && ob.scrollx !== true) || ob.horizontalAlign === BI.HorizontalAlign.Stretch) { |
|
|
|
|
return BI.extend({ |
|
|
|
|
verticalAlign: BI.VerticalAlign.Top |
|
|
|
|
}, ob, {type: "bi.horizontal_float_fill"}); |
|
|
|
|
}, ob, { type: "bi.horizontal_float_fill" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({ |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Stretch |
|
|
|
|
}, ob, {type: "bi.table_adapt"}); |
|
|
|
|
}, ob, { type: "bi.table_adapt" }); |
|
|
|
|
} |
|
|
|
|
if (BI.Providers.getProvider("bi.provider.system").getResponsiveMode()) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.responsive_inline"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.responsive_inline" }); |
|
|
|
|
} |
|
|
|
|
return ob; |
|
|
|
|
}); |
|
|
|
@ -104,9 +104,9 @@ BI.prepares.push(function () {
|
|
|
|
|
// var isAdapt = !ob.horizontalAlign || ob.horizontalAlign === BI.HorizontalAlign.Center || ob.horizontalAlign === BI.HorizontalAlign.Stretch;
|
|
|
|
|
// if (!isAdapt || justOneItem) {
|
|
|
|
|
if (supportFlex) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_center_adapt"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_center_adapt" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({}, ob, {type: "bi.inline_center_adapt"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.inline_center_adapt" }); |
|
|
|
|
// }
|
|
|
|
|
// return ob;
|
|
|
|
|
}); |
|
|
|
@ -115,9 +115,9 @@ BI.prepares.push(function () {
|
|
|
|
|
// var isAdapt = ob.horizontalAlign === BI.HorizontalAlign.Center || ob.horizontalAlign === BI.HorizontalAlign.Stretch;
|
|
|
|
|
// if (!isAdapt || justOneItem) {
|
|
|
|
|
if (supportFlex) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_vertical_center_adapt"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_vertical_center_adapt" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({}, ob, {type: "bi.inline_vertical_adapt"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.inline_vertical_adapt" }); |
|
|
|
|
// }
|
|
|
|
|
// return ob;
|
|
|
|
|
}); |
|
|
|
@ -126,7 +126,7 @@ BI.prepares.push(function () {
|
|
|
|
|
var isAdapt = !ob.horizontalAlign || ob.horizontalAlign === BI.HorizontalAlign.Center || ob.horizontalAlign === BI.HorizontalAlign.Stretch; |
|
|
|
|
var verticalAlignTop = !ob.verticalAlign || ob.verticalAlign === BI.VerticalAlign.TOP; |
|
|
|
|
if (verticalAlignTop && justOneItem) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.horizontal_auto"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.horizontal_auto" }); |
|
|
|
|
} |
|
|
|
|
var supportFlex = isSupportFlex(); |
|
|
|
|
// 在横向自适应场景下我们需要使用table的自适应撑出滚动条的特性(flex处理不了这种情况)
|
|
|
|
@ -134,24 +134,24 @@ BI.prepares.push(function () {
|
|
|
|
|
if (isAdapt) { |
|
|
|
|
return BI.extend({ |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Center |
|
|
|
|
}, ob, {type: "bi.table_adapt"}); |
|
|
|
|
}, ob, { type: "bi.table_adapt" }); |
|
|
|
|
} |
|
|
|
|
if (supportFlex) { |
|
|
|
|
return BI.extend({ |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Center, |
|
|
|
|
scrollx: false |
|
|
|
|
}, ob, {type: "bi.flex_horizontal"}); |
|
|
|
|
}, ob, { type: "bi.flex_horizontal" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({ |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Center |
|
|
|
|
}, ob, {type: "bi.table_adapt"}); |
|
|
|
|
}, ob, { type: "bi.table_adapt" }); |
|
|
|
|
}); |
|
|
|
|
BI.Plugin.configWidget("bi.horizontal_float", function (ob) { |
|
|
|
|
if (isSupportFlex()) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_horizontal_adapt"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_horizontal_adapt" }); |
|
|
|
|
} |
|
|
|
|
if (ob.items && ob.items.length <= 1) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.inline_horizontal_adapt"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.inline_horizontal_adapt" }); |
|
|
|
|
} |
|
|
|
|
return ob; |
|
|
|
|
}); |
|
|
|
@ -162,16 +162,16 @@ BI.prepares.push(function () {
|
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Stretch, |
|
|
|
|
verticalAlign: BI.VerticalAlign.Stretch, |
|
|
|
|
scrollx: false |
|
|
|
|
}, ob, {type: "bi.flex_horizontal"}); |
|
|
|
|
}, ob, { type: "bi.flex_horizontal" }); |
|
|
|
|
} |
|
|
|
|
if ((ob.horizontalAlign && ob.horizontalAlign !== BI.HorizontalAlign.Stretch) || (ob.scrollable === true || ob.scrollx === true)) { |
|
|
|
|
// 宽度不受限,要用table布局
|
|
|
|
|
return BI.extend({ |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Stretch, |
|
|
|
|
verticalAlign: BI.VerticalAlign.Stretch |
|
|
|
|
}, ob, {type: "bi.table_adapt"}); |
|
|
|
|
}, ob, { type: "bi.table_adapt" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({}, ob, {type: "bi.horizontal_float_fill"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.horizontal_float_fill" }); |
|
|
|
|
}); |
|
|
|
|
BI.Plugin.configWidget("bi.vertical_fill", function (ob) { |
|
|
|
|
if (isSupportFlex()) { |
|
|
|
@ -179,7 +179,7 @@ BI.prepares.push(function () {
|
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Stretch, |
|
|
|
|
verticalAlign: BI.VerticalAlign.Stretch, |
|
|
|
|
scrolly: false |
|
|
|
|
}, ob, {type: "bi.flex_vertical"}); |
|
|
|
|
}, ob, { type: "bi.flex_vertical" }); |
|
|
|
|
} |
|
|
|
|
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) { |
|
|
|
|
// 有滚动条,降级到table布局处理
|
|
|
|
@ -204,18 +204,18 @@ BI.prepares.push(function () {
|
|
|
|
|
} |
|
|
|
|
if (hasAuto) { |
|
|
|
|
// 有自动高的时候
|
|
|
|
|
return BI.extend({}, ob, {type: "bi.vtape_auto"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.vtape_auto" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({}, ob, {type: "bi.vtape"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.vtape" }); |
|
|
|
|
}); |
|
|
|
|
BI.Plugin.configWidget("bi.horizontal_sticky", function (ob) { |
|
|
|
|
if (!isSupportSticky) { |
|
|
|
|
return BI.extend({ scrollx: true }, ob, {type: "bi.horizontal_fill"}); |
|
|
|
|
return BI.extend({ scrollx: true }, ob, { type: "bi.horizontal_fill" }); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.Plugin.configWidget("bi.vertical_sticky", function (ob) { |
|
|
|
|
if (!isSupportSticky) { |
|
|
|
|
return BI.extend({ scrolly: true }, ob, {type: "bi.vertical_fill"}); |
|
|
|
|
return BI.extend({ scrolly: true }, ob, { type: "bi.vertical_fill" }); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
@ -223,7 +223,7 @@ BI.prepares.push(function () {
|
|
|
|
|
if (isSupportFlex()) { |
|
|
|
|
// IE下其实也是可以使用flex布局的,只要排除掉出现滚动条的情况
|
|
|
|
|
// if (!BI.isIE() || (ob.scrollable !== true && ob.scrolly !== true)) {
|
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_left_right_vertical_adapt"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_left_right_vertical_adapt" }); |
|
|
|
|
// }
|
|
|
|
|
} |
|
|
|
|
return ob; |
|
|
|
@ -232,40 +232,40 @@ BI.prepares.push(function () {
|
|
|
|
|
if (ob.scrollable === true || ob.scrollx !== false) { |
|
|
|
|
if (ob.hgap > 0 || ob.lgap > 0 || ob.rgap > 0) { |
|
|
|
|
if (BI.Providers.getProvider("bi.provider.system").getResponsiveMode()) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.responsive_flex_scrollable_horizontal"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.responsive_flex_scrollable_horizontal" }); |
|
|
|
|
} |
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_scrollable_horizontal"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_scrollable_horizontal" }); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (BI.Providers.getProvider("bi.provider.system").getResponsiveMode()) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.responsive_flex_horizontal"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.responsive_flex_horizontal" }); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.Plugin.configWidget("bi.flex_vertical", function (ob) { |
|
|
|
|
if (ob.scrollable === true || ob.scrollx === true) { |
|
|
|
|
if (ob.hgap > 0 || ob.lgap > 0 || ob.rgap > 0) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.flex_scrollable_vertical"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.flex_scrollable_vertical" }); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
BI.Plugin.configWidget("bi.table", function (ob) { |
|
|
|
|
if (!isSupportGrid()) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.td"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.td" }); |
|
|
|
|
} |
|
|
|
|
return ob; |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
BI.Plugin.configWidget("bi.radio", function (ob) { |
|
|
|
|
if (BI.isIE() && BI.getIEVersion() <= 9) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.image_radio"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.image_radio" }); |
|
|
|
|
} |
|
|
|
|
return ob; |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
BI.Plugin.configWidget("bi.checkbox", function (ob) { |
|
|
|
|
if (BI.isIE() && BI.getIEVersion() <= 9) { |
|
|
|
|
return BI.extend({}, ob, {type: "bi.image_checkbox"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.image_checkbox" }); |
|
|
|
|
} |
|
|
|
|
return ob; |
|
|
|
|
}); |
|
|
|
@ -274,6 +274,6 @@ BI.prepares.push(function () {
|
|
|
|
|
if (BI.isIE() && BI.getIEVersion() < 9) { |
|
|
|
|
return ob; |
|
|
|
|
} |
|
|
|
|
return BI.extend({}, ob, {type: "bi.half_button"}); |
|
|
|
|
return BI.extend({}, ob, { type: "bi.half_button" }); |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
}()); |
|
|
|
|