Zhenfei.Li 7 years ago
parent
commit
b6478370fc
  1. 116
      Gruntfile.js
  2. 8
      README.md
  3. 48
      demo/js/base/demo.canvas.js
  4. 32
      demo/js/base/demo.svg.js
  5. 33
      demo/js/base/editor/demo.code_editor.js
  6. 21
      demo/js/base/editor/demo.formula_editor.js
  7. 61
      demo/js/base/editor/demo.rich_editor.js
  8. 33
      demo/js/base/editor/demo.sql_editor.js
  9. 62
      demo/js/base/table/demo.collection_table.js
  10. 57
      demo/js/base/table/demo.grid_table.js
  11. 57
      demo/js/base/table/demo.resizable_table.js
  12. 367
      demo/js/base/table/demo.table_view.js
  13. 72
      demo/js/base/tree/demo.part_tree.js
  14. 6
      demo/js/base/tree/demo.sync_tree.js
  15. 45
      demo/js/case/combo/demo.static_combo.js
  16. 2
      demo/js/case/combo/demo.text_value_down_list_combo.js
  17. 7
      demo/js/case/demo.click.effect.js
  18. 42
      demo/js/case/demo.clipboard.js
  19. 1
      demo/js/case/demo.color_chooser_popup.js
  20. 35
      demo/js/case/demo.complex_canvas.js
  21. 2
      demo/js/case/editor/demo.sign_editor.js
  22. 33
      demo/js/case/editor/demo.sign_initial_editor.js
  23. 160
      demo/js/case/table/demo.adaptive_table.js
  24. 149
      demo/js/case/table/demo.layer_tree_table.js
  25. 149
      demo/js/case/table/demo.tree_table.js
  26. 149
      demo/js/case/tree/demo.branch_relation.js
  27. 233
      demo/js/case/tree/demo.branch_tree.js
  28. 103
      demo/js/case/tree/demo.handstand_branch_tree.js
  29. 137
      demo/js/category/largeTable/largeTable.js
  30. 44
      demo/js/config/base.js
  31. 52
      demo/js/config/case.js
  32. 4
      demo/js/config/category.js
  33. 32
      demo/js/config/widget.js
  34. 14
      demo/js/face.js
  35. 2
      demo/js/widget/datetime/demo.datetime.js
  36. 54
      demo/js/widget/filemanager/demo.filemanager.js
  37. 2
      demo/js/widget/multiselect/demo.multi_select_combo.js
  38. 2
      demo/js/widget/multiselect/demo.multi_select_tree.js
  39. 2
      demo/js/widget/slider/demo.slider.js
  40. 215
      demo/js/widget/table/demo.page_table.js
  41. 233
      demo/js/widget/table/demo.preview_table.js
  42. 159
      demo/js/widget/table/demo.responsive_table.js
  43. 159
      demo/js/widget/table/demo.sequence_table.js
  44. 57
      demo/js/widget/tree/demo.switchtree.js
  45. 54
      dist/_fineui.min.js
  46. 1498
      dist/base.css
  47. 33208
      dist/base.js
  48. 2403
      dist/bundle.css
  49. 134209
      dist/bundle.js
  50. 2
      dist/bundle.min.css
  51. 94
      dist/bundle.min.js
  52. 17004
      dist/case.js
  53. 431
      dist/core.css
  54. 56665
      dist/core.js
  55. 428
      dist/core_without_normalize.css
  56. 6066
      dist/demo.js
  57. 2403
      dist/fineui.css
  58. 134379
      dist/fineui.js
  59. 2
      dist/fineui.min.css
  60. 366
      dist/fineui.min.js
  61. 65061
      dist/fineui_without_jquery_polyfill.js
  62. 46
      dist/fix/fix.compact.js
  63. 107
      dist/fix/fix.js
  64. BIN
      dist/font/iconfont.eot
  65. 48
      dist/font/iconfont.svg
  66. BIN
      dist/font/iconfont.ttf
  67. BIN
      dist/font/iconfont.woff
  68. BIN
      dist/images/2x/background/trans_normal.png
  69. 49
      dist/index.html
  70. 29
      dist/polyfill.js
  71. 147
      dist/resource.css
  72. 8
      dist/router.js
  73. 22095
      dist/utils.js
  74. 11
      dist/utils.min.js
  75. 287
      dist/widget.css
  76. 4174
      dist/widget.js
  77. 14
      docs/.gitignore
  78. 21
      docs/LICENSE
  79. 6
      docs/OVERVIEW.md
  80. 15
      docs/README.md
  81. 35
      docs/START.md
  82. 203
      docs/SUMMARY.md
  83. 14
      docs/_book/.gitignore
  84. 21
      docs/_book/LICENSE
  85. 2888
      docs/_book/OVERVIEW.html
  86. 2913
      docs/_book/START.html
  87. 2950
      docs/_book/base/bubble.html
  88. 40
      docs/_book/base/bubble.md
  89. 3106
      docs/_book/base/button/button.html
  90. 66
      docs/_book/base/button/button.md
  91. 2940
      docs/_book/base/button/icon_button.html
  92. 38
      docs/_book/base/button/icon_button.md
  93. 2972
      docs/_book/base/button/image_button.html
  94. 46
      docs/_book/base/button/image_button.md
  95. 3024
      docs/_book/base/button/text_button.html
  96. 53
      docs/_book/base/button/text_button.md
  97. 2949
      docs/_book/base/canvas.html
  98. 40
      docs/_book/base/canvas.md
  99. 3003
      docs/_book/base/editor/code_editor.html
  100. 53
      docs/_book/base/editor/code_editor.md
  101. Some files were not shown because too many files have changed in this diff Show More

116
Gruntfile.js

@ -8,14 +8,13 @@ module.exports = function (grunt) {
separator: ""
},
polyfillJs: {
src: ["src/polyfill/**/*.js"],
src: ["src/core/foundation.js", "src/polyfill/**/*.js"],
dest: "dist/polyfill.js"
},
coreJs: {
src: [
"src/core/jquery.js",
"src/core/lodash.js",
"src/core/foundation.js",
"src/core/lodash.js",
// 'src/core/mvc/**/*.js',
"src/core/base.js",
"src/core/ob.js",
@ -23,7 +22,7 @@ module.exports = function (grunt) {
// 'src/core/model.js',
// 'src/core/view.js',
"src/core/shortcut.js",
"src/core/utils/*.js",
"src/core/utils/**/*.js",
"src/core/behavior/behavior.js",
"src/core/wrapper/layout.js",
"src/core/plugin.js",
@ -39,7 +38,6 @@ module.exports = function (grunt) {
baseJs: {
src: [
"src/third/**/*.js",
"src/base/formula/config.js",
"src/base/pane.js",
"src/base/single/single.js",
"src/base/single/text.js",
@ -48,7 +46,6 @@ module.exports = function (grunt) {
"src/base/single/tip/tip.js",
"src/base/combination/group.button.js",
"src/base/combination/tree.button.js",
"src/base/combination/map.button.js",
"src/base/tree/treeview.js",
"src/base/tree/asynctree.js",
"src/base/tree/parttree.js",
@ -66,8 +63,6 @@ module.exports = function (grunt) {
},
widgetJs: {
src: [
"src/widget/paramsettingcombo/popup.param.js",
"src/widget/sequencetable/treenumber.sequencetable.js",
"src/widget/**/*.js",
"src/component/**/*.js"
],
@ -110,14 +105,33 @@ module.exports = function (grunt) {
dest: "dist/bundle.css"
},
fineuiMinJs: {
src: ["dist/_fineui.min.js", "src/base/formula/formulaeditor.js"],
dest: "dist/fineui.min.js"
fineuiJs: {
src: ["dist/polyfill.js", "dist/core.js", "dist/fix/fix.js", "dist/base.js",
"dist/case.js", "dist/widget.js", "dist/fix/fix.compact.js", "dist/router.js", "ui/js/**/*.js", "!ui/js/fineui.i18n.js"],
dest: "dist/fineui.js"
},
fineuiJs: {
src: ["dist/polyfill.js", "dist/core.js", "dist/fix/fix.js", "src/third/**/*.js",
"src/base/formula/config.js",
fineuiWithoutJqueryAndPolyfillJs: {
src: ["src/core/foundation.js",
"src/core/lodash.js",
// 'src/core/mvc/**/*.js',
"src/core/base.js",
"src/core/ob.js",
"src/core/widget.js",
// 'src/core/model.js',
// 'src/core/view.js',
"src/core/shortcut.js",
"src/core/utils/*.js",
"src/core/behavior/behavior.js",
"src/core/wrapper/layout.js",
"src/core/plugin.js",
"src/core/**/*.js",
"!src/core/platform/web/**/*.js",
"src/data/data.js",
"src/data/**/*.js",
"dist/fix/fix.js",
"src/base/pane.js",
"src/base/single/single.js",
"src/base/single/text.js",
@ -127,12 +141,17 @@ module.exports = function (grunt) {
"src/base/combination/group.button.js",
"src/base/combination/tree.button.js",
"src/base/combination/map.button.js",
"src/base/tree/treeview.js",
"src/base/tree/asynctree.js",
"src/base/tree/parttree.js",
"src/base/**/*.js",
"dist/case.js", "dist/widget.js", "dist/fix/fix.compact.js", "dist/router.js", "ui/js/**/*.js", "!ui/js/fineui.i18n.js"],
dest: "dist/fineui.js"
"!src/base/tree/**/*.js",
"!src/base/single/input/file.js",
"src/case/combo/popup.bubble.js",
"src/case/**/*.js",
"!src/case/colorchooser/**/*.js",
"!src/case/tree/tree.display.js",
"dist/widget.js", "dist/fix/fix.compact.js", "ui/js/**/*.js"],
dest: "dist/fineui_without_jquery_polyfill.js"
},
fineuiCss: {
@ -154,8 +173,8 @@ module.exports = function (grunt) {
},
utilsJs: {
src: [
"src/core/lodash.js",
"src/core/foundation.js",
"src/core/lodash.js",
"src/core/var.js",
"src/core/proto/array.js",
"src/core/proto/number.js",
@ -168,6 +187,8 @@ module.exports = function (grunt) {
"src/core/inject.js",
"src/core/utils/*.js",
"utils/date.i18n.js",
"public/js/fineui.i18n.js",
"src/data/data.js",
"src/data/**/*.js"
],
@ -175,6 +196,8 @@ module.exports = function (grunt) {
}
},
less: {
demo: {
expand: true,
@ -214,29 +237,13 @@ module.exports = function (grunt) {
uglify: {
options: {
banner: "/*! <%= pkg.name %> <%= grunt.template.today(\"dd-mm-yyyy\") %> */\n"
banner: "/*! <%= pkg.name %> <%= grunt.template.today(\"yyyy-mm-dd HH:MM:ss\") %> */\n"
},
dist: {
files: {
"dist/bundle.min.js": ["<%= concat.bundleJs.dest %>"],
"dist/utils.min.js": ["<%= concat.utilsJs.dest %>"],
"dist/_fineui.min.js": ["dist/polyfill.js", "dist/core.js", "dist/fix/fix.js", "src/third/**/*.js",
"src/base/formula/config.js",
"src/base/pane.js",
"src/base/single/single.js",
"src/base/single/text.js",
"src/base/single/button/button.basic.js",
"src/base/single/button/button.node.js",
"src/base/single/tip/tip.js",
"src/base/combination/group.button.js",
"src/base/combination/tree.button.js",
"src/base/combination/map.button.js",
"src/base/tree/treeview.js",
"src/base/tree/asynctree.js",
"src/base/tree/parttree.js",
"src/base/**/*.js",
"!src/base/formula/formulaeditor.js",
"dist/case.js", "dist/widget.js", "dist/fix/fix.compact.js", "dist/router.js", "ui/js/**/*.js", "!ui/js/fineui.i18n.js"]
"dist/fineui.min.js": ["<%= concat.fineuiJs.dest %>"]
}
}
},
@ -270,9 +277,26 @@ module.exports = function (grunt) {
}
}
},
copy: {
js: {
files: [
{
expand: true,
cwd: "dist",
src: [
"fineui.js"
],
dest: "dist/",
rename: function (dest, src) {
return dest + src.replace(".js", ".min.js");
}
}
]
}
},
watch: {
scripts: {
files: ["src/**/*.js", "demo/js/**/*.js", "demo/version.js", "demo/config.js", "demo/less/**/*.less"],
files: ["src/**/*.js", "src/**/*.less", "demo/js/**/*.js", "demo/version.js", "demo/config.js", "demo/less/**/*.less"],
tasks: ["less", "concat"],
options: {
spanw: true,
@ -296,11 +320,11 @@ module.exports = function (grunt) {
},
server: {
options: {
port: 9001,
base: "./dist"
port: 9001
}
}
}
},
clean: ["src/css", "demo/css"]
});
grunt.loadNpmTasks("grunt-contrib-uglify");
@ -310,13 +334,15 @@ module.exports = function (grunt) {
grunt.loadNpmTasks("grunt-contrib-concat");
grunt.loadNpmTasks("grunt-contrib-cssmin");
grunt.loadNpmTasks("grunt-contrib-connect");
grunt.loadNpmTasks("grunt-contrib-clean");
grunt.loadNpmTasks("grunt-contrib-copy");
var defaultTask = ["less", "concat", "connect", "watch"];
var defaultTask = ["clean", "less", "concat", "connect", "watch"];
grunt.registerTask("default", defaultTask);
grunt.registerTask("compile", function () {
grunt.config.set("connect.options.open", false);
grunt.task.run(defaultTask);
});
grunt.registerTask("min", ["less", "concat", "uglify", "cssmin"]);
grunt.registerTask("build", ["less", "concat", "uglify", "cssmin", "uglify", "concat"]);
grunt.registerTask("build", ["clean", "less", "cssmin", "concat", "uglify"]);
grunt.registerTask("fake-build", ["clean", "less", "cssmin", "concat", "copy"]);
};

8
README.md

@ -12,15 +12,9 @@ Documentation
http://fanruan.coding.me/fineui-doc/
### API
GithubPages: [https://fanruan.github.io/fineui](https://fanruan.github.io/fineui)
CodingPages: [http://fanruan.coding.me/fineui](http://fanruan.coding.me/fineui)
### Demo
CodingPages: [http://fanruan.coding.me/fineui/dist/index.html](http://fanruan.coding.me/fineui/dist/index.html)
CodingPages: [http://fanruan.coding.me/fineui](http://fanruan.coding.me/fineui)
License

48
demo/js/base/demo.canvas.js

@ -1,48 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var canvas = BI.createWidget({
type: "bi.canvas",
width: 500,
height: 600
});
canvas.rect(0, 0, 80, 100, "#7dbd2f");
canvas.line(80, 0, 100, 100, 200, 100, 300, 0, {
strokeStyle: "red",
lineWidth: 2
});
canvas.circle(150, 50, 20, "green");
// 渐变矩形
canvas.rect(0, 120, 80, 100, canvas.gradient(0, 120, 80, 220, "#FF0000", "#00FF00"));
// 空心图形
canvas.hollow(100, 120, 100, 220, 200, 120, {
strokeStyle: "blue"
});
// 实心图形
canvas.solid(100, 240, 200, 240, 150, 280, 200, 320, 100, 320, {
strokeStyle: "yellow",
fillStyle: "pink"
});
canvas.stroke();
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: canvas,
left: 100,
top: 50
}]
});
}
});
BI.shortcut("demo.canvas", Demo.Func);

32
demo/js/base/demo.svg.js

@ -1,32 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var svg = BI.createWidget({
type: "bi.svg",
width: 500,
height: 600
});
var circle = svg.circle(100, 100, 10);
circle.animate({fill: "#223fa3", stroke: "#000", "stroke-width": 80, "stroke-opacity": 0.5}, 2000);
var el = svg.rect(10, 200, 300, 200);
el.transform("t100,100r45t-100,0");
svg.path("M10,10L50,50M50,10L10,50")
.attr({stroke: "red"});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: svg,
left: 100,
top: 50
}]
});
}
});
BI.shortcut("demo.svg", Demo.Func);

33
demo/js/base/editor/demo.code_editor.js

@ -1,33 +0,0 @@
Demo.CodeEditor = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-editor"
},
render: function () {
var editor = BI.createWidget({
type: "bi.code_editor",
cls: "mvc-border",
width: 600,
height: 400
});
BI.createWidget({
type: "bi.vertical",
element: this,
hgap: 30,
vgap: 20,
items: [editor, {
type: "bi.button",
text: "getValue",
handler: function () {
BI.Msg.toast(JSON.stringify(editor.getValue()));
}
}, {
type: "bi.button",
text: "setValue",
handler: function () {
editor.setValue("测试数据");
}
}]
});
}
});
BI.shortcut("demo.code_editor", Demo.CodeEditor);

21
demo/js/base/editor/demo.formula_editor.js

@ -1,21 +0,0 @@
Demo.CodeEditor = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-editor"
},
render: function () {
this.formula = BI.createWidget({
type: "bi.formula_editor",
width: 300,
height: 200,
value: "SUM(C5, 16, 26)"
});
BI.createWidget({
type: "bi.left",
element: this,
items: [this.formula],
hgap: 20,
vgap: 20
});
}
});
BI.shortcut("demo.formula_editor", Demo.CodeEditor);

61
demo/js/base/editor/demo.rich_editor.js

@ -1,61 +0,0 @@
Demo.RichEditor = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-rich-editor"
},
render: function () {
var self = this;
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.rich_editor",
height: "100%",
cls: "bi-border",
ref: function () {
self.editor = this;
},
toolbar: {
type: "bi.rich_editor_text_toolbar",
buttons: [
{type: "bi.rich_editor_font_chooser"},
{type: "bi.rich_editor_size_chooser"},
{type: "bi.rich_editor_bold_button"},
{type: "bi.rich_editor_italic_button"},
{type: "bi.rich_editor_underline_button"},
{type: "bi.rich_editor_color_chooser"},
{
type: "bi.rich_editor_background_color_chooser",
listeners: [{
eventName: "EVENT_CHANGE",
action: function (backgroundColor) {
self.editor.element.css({
backgroundColor: backgroundColor,
color: BI.DOM.getContrastColor(backgroundColor)
});
}
}]
},
{type: "bi.rich_editor_align_left_button"},
{type: "bi.rich_editor_align_center_button"},
{type: "bi.rich_editor_align_right_button"},
{type: "bi.rich_editor_param_button"}
]
}
},
left: 10,
top: 10,
bottom: 10,
right: 10
}]
});
},
mounted: function () {
var image = BI.DOM.getImage("测试");
var src = image.src;
var style = image.style;
this.editor.setValue("<div>这是一条<font size=\"4\" color=\"#009de3\">测试</font>数据<img class=\"rich-editor-param\" width='" + image.width + "' height='" + image.height + "' src='" + src + "' style='" + style + "' /></div>");
}
});
BI.shortcut("demo.rich_editor", Demo.RichEditor);

33
demo/js/base/editor/demo.sql_editor.js

@ -1,33 +0,0 @@
/**
* Created by Windy on 2017/12/15.
*/
Demo.SQLEditor = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-editor"
},
render: function () {
var self = this;
this.formula = BI.createWidget({
type : 'bi.sql_editor',
supportParam: true,
width : 300,
height : 200,
value : "select * from DEMO_CONTRACT where 合同类型 = ${长期协议} and 购买数量 = sum([1,2,3,4])"
});
BI.createWidget({
type: "bi.left",
element: this,
items: [this.formula, {
type: "bi.button",
height: 24,
handler: function () {
BI.Msg.alert("", self.formula.getValue());
}
}],
hgap: 20,
vgap: 20
})
}
});
BI.shortcut("demo.sql_editor", Demo.SQLEditor);

62
demo/js/base/table/demo.collection_table.js

@ -1,62 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [], header = [], columnSize = [];
var rowCount = 100, columnCount = 100;
for (var i = 0; i < 1; i++) {
header[i] = [];
for (var j = 0; j < columnCount; j++) {
header[i][j] = {
type: "bi.label",
text: "表头" + i + "-" + j
};
columnSize[j] = 100;
}
}
for (var i = 0; i < rowCount; i++) {
items[i] = [];
for (var j = 0; j < columnCount; j++) {
items[i][j] = {
type: "bi.label",
text: (i < 3 ? 0 : i) + "-" + j
};
}
}
var table = BI.createWidget({
type: "bi.resizable_table",
el: {
type: "bi.collection_table"
},
width: 600,
height: 500,
isResizeAdapt: true,
isNeedResize: true,
isNeedMerge: true,
mergeCols: [0, 1],
mergeRule: function (col1, col2) {
return BI.isEqual(col1, col2);
},
isNeedFreeze: true,
freezeCols: [0, 1],
columnSize: columnSize,
items: items,
header: header
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: table,
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.collection_table", Demo.Func);

57
demo/js/base/table/demo.grid_table.js

@ -1,57 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [], header = [], columnSize = [];
var rowCount = 100, columnCount = 100;
for (var i = 0; i < 1; i++) {
header[i] = [];
for (var j = 0; j < columnCount; j++) {
header[i][j] = {
type: "bi.label",
text: "表头" + i + "-" + j
};
columnSize[j] = 100;
}
}
for (var i = 0; i < rowCount; i++) {
items[i] = [];
for (var j = 0; j < columnCount; j++) {
items[i][j] = {
type: "bi.label",
text: (i < 3 ? 0 : i) + "-" + j
};
}
}
var table = BI.createWidget({
type: "bi.resizable_table",
el: {
type: "bi.grid_table"
},
width: 600,
height: 500,
isResizeAdapt: true,
isNeedResize: true,
isNeedFreeze: true,
freezeCols: [0, 1],
columnSize: columnSize,
items: items,
header: header
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: table,
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.grid_table", Demo.Func);

57
demo/js/base/table/demo.resizable_table.js

@ -1,57 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [], header = [], columnSize = [];
var rowCount = 100, columnCount = 100;
for (var i = 0; i < 1; i++) {
header[i] = [];
for (var j = 0; j < columnCount; j++) {
header[i][j] = {
type: "bi.label",
text: "表头" + i + "-" + j
};
columnSize[j] = 100;
}
}
for (var i = 0; i < rowCount; i++) {
items[i] = [];
for (var j = 0; j < columnCount; j++) {
items[i][j] = {
type: "bi.label",
text: (i < 3 ? 0 : i) + "-" + j
};
}
}
var table = BI.createWidget({
type: "bi.resizable_table",
el: {
type: "bi.grid_table"
},
width: 600,
height: 500,
isResizeAdapt: true,
isNeedResize: true,
isNeedFreeze: true,
freezeCols: [0, 1],
columnSize: columnSize,
items: items,
header: header
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: table,
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.resizable_table", Demo.Func);

367
demo/js/base/table/demo.table_view.js

@ -1,367 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [[{
text: "第一行第一列"
}, {
text: "第一行第一列"
}, {
text: "第一行第一列"
}], [{
text: "第一行第一列"
}, {
text: "第一行第一列"
}, {
text: "第一行第一列"
}], [{
text: "第三行第一列"
}, {
text: "第三行第二列"
}, {
text: "第三行第三列"
}], [{
text: "第四行第一列"
}, {
text: "第四行第二列"
}, {
text: "第四行第三列"
}], [{
text: "第五行第一列"
}, {
text: "第五行第二列"
}, {
text: "第五行第三列"
}], [{
text: "第六行第一列"
}, {
text: "第六行第二列"
}, {
text: "第六行第三列"
}], [{
text: "第七行第一列"
}, {
text: "第七行第二列"
}, {
text: "第七行第三列"
}], [{
text: "第八行第一列"
}, {
text: "第八行第二列"
}, {
text: "第八行第三列"
}], [{
text: "第九行第一列"
}, {
text: "第九行第二列"
}, {
text: "第九行第三列"
}], [{
text: "第十行第一列"
}, {
text: "第十行第二列"
}, {
text: "第十行第三列"
}], [{
text: "第十一行第一列"
}, {
text: "第十一行第二列"
}, {
text: "第十一行第三列"
}], [{
text: "第十二行第一列"
}, {
text: "第十二行第二列"
}, {
text: "第十二行第三列"
}], [{
text: "第十三行第一列"
}, {
text: "第十三行第二列"
}, {
text: "第十三行第三列"
}], [{
text: "第十四行第一列"
}, {
text: "第十四行第二列"
}, {
text: "第十四行第三列"
}], [{
text: "第十五行第一列"
}, {
text: "第十五行第二列"
}, {
text: "第十五行第三列"
}], [{
text: "第十六行第一列"
}, {
text: "第十六行第二列"
}, {
text: "第十六行第三列"
}], [{
text: "第十七行第一列"
}, {
text: "第十七行第二列"
}, {
text: "第十七行第三列"
}], [{
text: "第十八行第一列"
}, {
text: "第十八行第二列"
}, {
text: "第十八行第三列"
}]];
var items2 = [[{
text: "第一行第一列"
}, {
text: "第一行第二列"
}, {
text: "第一行第三列"
}, {
text: "第一行第四列"
}, {
text: "第一行第五列"
}], [{
text: "第二行第一列"
}, {
text: "第二行第二列"
}, {
text: "第二行第三列"
}, {
text: "第二行第四列"
}, {
text: "第二行第五列"
}], [{
text: "第二行第一列"
}, {
text: "第二行第二列"
}, {
text: "第三行第三列"
}, {
text: "第三行第四列"
}, {
text: "第三行第五列"
}], [{
text: "第二行第一列"
}, {
text: "第四行第二列"
}, {
text: "第四行第三列"
}, {
text: "第四行第四列"
}, {
text: "第四行第五列"
}],
[{
text: "第五行第一列"
}, {
text: "第五行第一列"
}, {
text: "第五行第三列"
}, {
text: "第五行第四列"
}, {
text: "第五行第五列"
}], [{
text: "第六行第一列"
}, {
text: "第六行第一列"
}, {
text: "第六行第三列"
}, {
text: "第六行第四列"
}, {
text: "第六行第五列"
}], [{
text: "第七行第一列"
}, {
text: "第七行第二列"
}, {
text: "第七行第三列"
}, {
text: "第七行第四列"
}, {
text: "第七行第五列"
}], [{
text: "第八行第一列"
}, {
text: "第八行第二列"
}, {
text: "第八行第三列"
}, {
text: "第八行第四列"
}, {
text: "第八行第五列"
}], [{
text: "第九行第一列"
}, {
text: "第九行第二列"
}, {
text: "第九行第三列"
}, {
text: "第九行第四列"
}, {
text: "第九行第五列"
}], [{
text: "第十行第一列"
}, {
text: "第十行第二列"
}, {
text: "第十行第三列"
}, {
text: "第十行第四列"
}, {
text: "第十行第五列"
}], [{
text: "第十一行第一列"
}, {
text: "第十一行第二列"
}, {
text: "第十一行第三列"
}, {
text: "第十一行第四列"
}, {
text: "第十一行第五列"
}], [{
text: "第十二行第一列"
}, {
text: "第十二行第二列"
}, {
text: "第十二行第三列"
}, {
text: "第十二行第四列"
}, {
text: "第十二行第五列"
}], [{
text: "第十三行第一列"
}, {
text: "第十三行第二列"
}, {
text: "第十三行第三列"
}, {
text: "第十三行第四列"
}, {
text: "第十三行第五列"
}], [{
text: "第十四行第一列"
}, {
text: "第十四行第二列"
}, {
text: "第十四行第三列"
}, {
text: "第十四行第四列"
}, {
text: "第十四行第五列"
}]];
var header = [[{
text: "表头1"
}, {
text: "表头2"
}, {
text: "表头3"
}]];
var header2 = [[{
text: "表头1"
}, {
text: "表头2"
}, {
text: "表头3"
}, {
text: "表头4"
}, {
text: "表头5"
}]];
var table1 = BI.createWidget({
type: "bi.table_view",
isNeedResize: true,
isNeedMerge: true,
mergeCols: [0, 1],
columnSize: [100, 200, 300],
items: items,
header: header
});
var table2 = BI.createWidget({
type: "bi.table_view",
isNeedMerge: true,
isNeedFreeze: true,
freezeCols: [0, 1],
mergeCols: [0, 1],
columnSize: [100, 200, 300, 400, 500],
items: items2,
header: header2
});
var table3 = BI.createWidget({
type: "bi.table_view",
isNeedMerge: true,
isNeedFreeze: true,
freezeCols: [4],
mergeCols: [0, 1],
columnSize: [100, 200, 300, 400, 100],
items: items2,
header: header2
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.grid",
columns: 2,
rows: 2,
items: [{
column: 0,
row: 0,
el: table1
}, {
column: 1,
row: 0,
el: table2
}, {
column: 0,
row: 1,
el: table3
}, {
column: 1,
row: 1,
el: {
type: "bi.vertical",
items: [{
type: "bi.button",
text: "第一个表setColumnSize([300, 200, 100])",
handler: function () {
table1.setColumnSize([300, 200, 100]);
}
}, {
type: "bi.button",
text: "第二个表setColumnSize([50, 100, 150, 200, 250])",
handler: function () {
table2.setColumnSize([50, 100, 150, 200, 250]);
}
}, {
type: "bi.button",
text: "第三个表setColumnSize([50, 100, 150, 200, 50])",
handler: function () {
table3.setColumnSize([50, 100, 150, 200, 50]);
}
}],
vgap: 10
}
}]
},
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.table_view", Demo.Func);

72
demo/js/base/tree/demo.part_tree.js

@ -3,7 +3,79 @@ Demo.Func = BI.inherit(BI.Widget, {
baseCls: "demo-func"
},
mounted: function () {
this.partTree.stroke({
keyword: "1"
});
},
render: function () {
var self = this;
return {
type: "bi.vtape",
items: [{
type: "bi.label",
height: 50,
text: "先初始化一份数据,然后再异步获取数据的树"
}, {
type: "bi.part_tree",
ref: function (_ref) {
self.partTree = _ref;
},
paras: {
selectedValues: {"1": {}, "2": {"1": {}}}
},
itemsCreator: function (op, callback) {
if (op.type === BI.TreeView.REQ_TYPE_INIT_DATA) {
callback({
items: [{
id: "1",
text: 1,
isParent: true,
open: true
}, {
id: "11",
pId: "1",
text: 11,
isParent: true,
open: true
}, {
id: "111",
pId: "11",
text: 111,
isParent: true
}, {
id: "2",
text: 2
}, {
id: "3",
text: 3
}],
hasNext: BI.isNull(op.id)
});
return;
}
callback({
items: [{
id: (op.id || "") + "1",
pId: op.id,
text: 1,
isParent: true
}, {
id: (op.id || "") + "2",
pId: op.id,
text: 2
}, {
id: (op.id || "") + "3",
pId: op.id,
text: 3
}],
hasNext: BI.isNull(op.id)
});
}
}]
};
}
});
BI.shortcut("demo.part_tree", Demo.Func);

6
demo/js/base/tree/demo.sync_tree.js

@ -4,7 +4,9 @@ Demo.Func = BI.inherit(BI.Widget, {
},
mounted: function () {
this.syncTree.stroke();
this.syncTree.stroke({
keyword: "1"
});
},
render: function () {
@ -21,7 +23,7 @@ Demo.Func = BI.inherit(BI.Widget, {
self.syncTree = _ref;
},
paras: {
selectedValues: {"_0": {}, "_5": {"_5_0": {}}}
selectedValues: {"1": {}, "2": {"1": {}}}
},
itemsCreator: function (op, callback) {
callback({

45
demo/js/case/combo/demo.static_combo.js

@ -1,45 +0,0 @@
/**
* Created by Dailer on 2017/7/11.
*/
Demo.StaticCombo = BI.inherit(BI.Widget, {
props: {
baseCls: ""
},
beforeMount: function () {
this.refs.setValue(2);
},
render: function () {
var self = this;
return {
type: "bi.horizontal_auto",
items: [{
type: "bi.static_combo",
text: "Value 不变",
width: 300,
ref: function (_ref) {
self.refs = _ref;
},
items: [
{
text: "MVC-1",
value: 1
}, {
text: "MVC-2",
value: 2
}, {
text: "MVC-3",
value: 3
}
]
}],
vgap: 20
};
}
});
BI.shortcut("demo.static_combo", Demo.StaticCombo);

2
demo/js/case/combo/demo.text_value_down_list_combo.js

@ -39,7 +39,7 @@ Demo.TextValueDownListCombo = BI.inherit(BI.Widget, {
cls: "dot-e-font"
}, {
text: BI.i18nText("BI-Basic_Average_Value"),
value: 4,
value: 5,
cls: "dot-e-font"
}]
}]]

7
demo/js/case/demo.click.effect.js

@ -21,15 +21,14 @@ Demo.Func = BI.inherit(BI.Widget, {
}, {
text: "bi-list-item-active2",
cls: "bi-list-item-active2 close-font"
}, {
text: "bi-list-item-active3",
cls: "bi-list-item-active3 close-font"
}, {
text: "bi-list-item-select",
cls: "bi-list-item-select close-font"
}, {
text: "bi-list-item-select2",
cls: "bi-list-item-select2 close-font"
}], {
type: "bi.icon_text_item",
disabled: true,
logic: {
dynamic: true
}

42
demo/js/case/demo.clipboard.js

@ -1,42 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var editor = BI.createWidget({
type: "bi.text_editor",
width: 200,
height: 30,
value: "这是复制的内容"
});
var clipboard = BI.createWidget({
type: "bi.clipboard",
width: 100,
height: 100,
cls: "layout-bg1",
copy: function () {
return editor.getValue();
},
afterCopy: function () {
BI.Msg.toast(editor.getValue());
}
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: editor,
left: 100,
top: 50
}, {
el: clipboard,
left: 100,
top: 100
}]
});
}
});
BI.shortcut("demo.clipboard", Demo.Func);

1
demo/js/case/demo.color_chooser_popup.js

@ -9,7 +9,6 @@ Demo.Func = BI.inherit(BI.Widget, {
items: [{
el: {
type: "bi.color_chooser_popup",
disabled: true,
cls: "bi-card"
},
left: 100,

35
demo/js/case/demo.complex_canvas.js

@ -1,35 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var canvas = BI.createWidget({
type: "bi.complex_canvas",
width: 500,
height: 600
});
canvas.branch(55, 100, 10, 10, 100, 10, 200, 10, {
offset: 20,
strokeStyle: "red",
lineWidth: 2
});
canvas.branch(220, 155, 120, 110, 150, 200, {
offset: 40
});
canvas.stroke();
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: canvas,
left: 100,
top: 50
}]
});
}
});
BI.shortcut("demo.complex_canvas", Demo.Func);

2
demo/js/case/editor/demo.sign_editor.js

@ -8,7 +8,7 @@ Demo.SignEditor = BI.inherit(BI.Widget, {
render: function () {
var editor = BI.createWidget({
type: "bi.sign_editor",
cls: "bi-border",
cls: "bi-border bi-focus-shadow",
validationChecker: function (v) {
return v != "abc";
},

33
demo/js/case/editor/demo.sign_initial_editor.js

@ -1,33 +0,0 @@
/**
* Created by Dailer on 2017/7/11.
*/
Demo.SignInitialEditor = BI.inherit(BI.Widget, {
props: {
baseCls: ""
},
mounted: function () {
this.editor.setValue({
value: "123",
text: "sdga"
});
},
render: function () {
var self = this;
return {
type: "bi.horizontal_adapt",
items: [{
type: "bi.sign_initial_editor",
ref: function () {
self.editor = this;
},
cls: "layout-bg5",
text: "原始值",
width: 300
}],
vgap: 20
};
}
});
BI.shortcut("demo.sign_initial_editor", Demo.SignInitialEditor);

160
demo/js/case/table/demo.adaptive_table.js

@ -1,160 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [[{
text: "第一行第一列"
}, {
text: "第一行第一列"
}, {
text: "第一行第一列"
}], [{
text: "第一行第一列"
}, {
text: "第一行第一列"
}, {
text: "第一行第一列"
}], [{
text: "第三行第一列"
}, {
text: "第三行第二列"
}, {
text: "第三行第三列"
}], [{
text: "第四行第一列"
}, {
text: "第四行第二列"
}, {
text: "第四行第三列"
}], [{
text: "第五行第一列"
}, {
text: "第五行第二列"
}, {
text: "第五行第三列"
}], [{
text: "第六行第一列"
}, {
text: "第六行第二列"
}, {
text: "第六行第三列"
}], [{
text: "第七行第一列"
}, {
text: "第七行第二列"
}, {
text: "第七行第三列"
}], [{
text: "第八行第一列"
}, {
text: "第八行第二列"
}, {
text: "第八行第三列"
}], [{
text: "第九行第一列"
}, {
text: "第九行第二列"
}, {
text: "第九行第三列"
}], [{
text: "第十行第一列"
}, {
text: "第十行第二列"
}, {
text: "第十行第三列"
}], [{
text: "第十一行第一列"
}, {
text: "第十一行第二列"
}, {
text: "第十一行第三列"
}], [{
text: "第十二行第一列"
}, {
text: "第十二行第二列"
}, {
text: "第十二行第三列"
}], [{
text: "第十三行第一列"
}, {
text: "第十三行第二列"
}, {
text: "第十三行第三列"
}], [{
text: "第十四行第一列"
}, {
text: "第十四行第二列"
}, {
text: "第十四行第三列"
}], [{
text: "第十五行第一列"
}, {
text: "第十五行第二列"
}, {
text: "第十五行第三列"
}], [{
text: "第十六行第一列"
}, {
text: "第十六行第二列"
}, {
text: "第十六行第三列"
}], [{
text: "第十七行第一列"
}, {
text: "第十七行第二列"
}, {
text: "第十七行第三列"
}], [{
text: "第十八行第一列"
}, {
text: "第十八行第二列"
}, {
text: "第十八行第三列"
}]];
var header = [[{
text: "表头1"
}, {
text: "表头2"
}, {
text: "表头3"
}]];
var table = BI.createWidget({
type: "bi.adaptive_table",
el: {
type: "bi.resizable_table",
el: {
type: "bi.grid_table"
}
},
width: 600,
height: 400,
minColumnSize: [100, 100, 100],
columnSize: [100, 100, 100],
header: header,
items: items
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.grid",
columns: 1,
rows: 1,
items: [[{
el: table
}]]
},
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.adaptive_table", Demo.Func);

149
demo/js/case/table/demo.layer_tree_table.js

@ -1,149 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [{
children: [{
text: "节点1",
children: [{
text: "子节点1",
children: [{
text: "叶节点1",
values: [{text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 112}]
}, {
text: "叶节点2",
values: [{text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 122}]
}],
values: [{text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 1102}]
}, {
text: "子节点2",
children: [{
text: "叶节点3",
values: [{text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 132}]
}, {
text: "叶节点4",
values: [{text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 142}]
}],
values: [{text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 1202}]
}, {
text: "子节点3",
children: [{
text: "叶节点5",
values: [{text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 152}]
}],
values: [{text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 1302}]
}],
values: [{text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 11002}]
}, {
text: "节点2",
values: [{text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 12002}]
}],
values: [{text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 112002}]
}];
var header = [{
text: "header1"
}, {
text: "header2"
}, {
text: "header3"
}, {
text: "金额",
tag: 1
}, {
text: "金额",
tag: 2
}, {
text: "金额",
tag: 3
}, {
text: "金额",
tag: 4
}, {
text: "金额",
tag: 5
}, {
text: "金额",
tag: 6
}, {
text: "金额",
tag: 7
}];
var crossHeader = [{
text: "cross1"
}, {
text: "cross2"
}];
var crossItems = [{
children: [{
text: "节点1",
children: [{
text: "子节点1"
}, {
text: "子节点2"
}],
values: [0]
}, {
text: "节点2",
children: [{
text: "子节点3"
}, {
text: "子节点4"
}],
values: [0]
}],
values: [0]
}];
var table = BI.createWidget({
type: "bi.layer_tree_table",
el: {
type: "bi.adaptive_table",
el: {
type: "bi.resizable_table",
el: {
type: "bi.collection_table",
mergeRule: function (col1, col2) {
return BI.isEqual(col1, col2);
}
}
}
},
width: 600,
height: 400,
isNeedFreeze: true,
isNeedMerge: true,
freezeCols: [0, 1, 2],
mergeCols: [0, 1, 2],
minColumnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
columnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
header: header,
items: items,
crossHeader: crossHeader,
crossItems: crossItems
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.grid",
columns: 1,
rows: 1,
items: [[{
el: table
}]]
},
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.layer_tree_table", Demo.Func);

149
demo/js/case/table/demo.tree_table.js

@ -1,149 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [{
children: [{
text: "节点1",
children: [{
text: "子节点1",
children: [{
text: "叶节点1",
values: [{text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 112}]
}, {
text: "叶节点2",
values: [{text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 122}]
}],
values: [{text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 1102}]
}, {
text: "子节点2",
children: [{
text: "叶节点3",
values: [{text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 132}]
}, {
text: "叶节点4",
values: [{text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 142}]
}],
values: [{text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 1202}]
}, {
text: "子节点3",
children: [{
text: "叶节点5",
values: [{text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 152}]
}],
values: [{text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 1302}]
}],
values: [{text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 11002}]
}, {
text: "节点2",
values: [{text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 12002}]
}],
values: [{text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 112002}]
}];
var header = [{
text: "header1"
}, {
text: "header2"
}, {
text: "header3"
}, {
text: "金额",
tag: 1
}, {
text: "金额",
tag: 2
}, {
text: "金额",
tag: 3
}, {
text: "金额",
tag: 4
}, {
text: "金额",
tag: 5
}, {
text: "金额",
tag: 6
}, {
text: "金额",
tag: 7
}];
var crossHeader = [{
text: "cross1"
}, {
text: "cross2"
}];
var crossItems = [{
children: [{
text: "节点1",
children: [{
text: "子节点1"
}, {
text: "子节点2"
}],
values: [0]
}, {
text: "节点2",
children: [{
text: "子节点3"
}, {
text: "子节点4"
}],
values: [0]
}],
values: [0]
}];
var table = BI.createWidget({
type: "bi.tree_table",
el: {
type: "bi.adaptive_table",
el: {
type: "bi.resizable_table",
el: {
type: "bi.collection_table",
mergeRule: function (col1, col2) {
return BI.isEqual(col1, col2);
}
}
}
},
width: 600,
height: 400,
isNeedFreeze: true,
isNeedMerge: true,
freezeCols: [0, 1, 2],
mergeCols: [0, 1, 2],
minColumnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
columnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
header: header,
items: items,
crossHeader: crossHeader,
crossItems: crossItems
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.grid",
columns: 1,
rows: 1,
items: [[{
el: table
}]]
},
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.tree_table", Demo.Func);

149
demo/js/case/tree/demo.branch_relation.js

@ -1,149 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var relation = BI.createWidget({
type: "bi.branch_relation",
items: [
{
id: -1,
value: "根目录",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 1,
pId: -1,
value: "第一级目录1",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 11,
pId: 1,
value: "第二级文件1",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 12,
pId: 1,
value: "第二级目录1",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 121,
pId: 12,
value: "第三级目录1",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 122,
pId: 12,
value: "第三级文件1",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 1211,
pId: 121,
value: "第四级目录",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 12111,
pId: 1211,
value: "第五级文件1",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 2,
pId: -1,
value: "第一级目录2",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 21,
pId: 2,
value: "第二级目录2",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 22,
pId: 2,
value: "第二级文件2",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 211,
pId: 21,
value: "第三级目录2",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 212,
pId: 21,
value: "第三级文件2",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
},
{
id: 2111,
pId: 211,
value: "第四级文件2",
type: "bi.text_button",
cls: "layout-bg2",
width: 180,
height: 100
}
],
direction: BI.Direction.Right,
align: BI.HorizontalAlign.Right,
centerOffset: -50
});
BI.createWidget({
type: "bi.adaptive",
element: this,
items: [relation]
});
}
});
BI.shortcut("demo.branch_relation", Demo.Func);

233
demo/js/case/tree/demo.branch_tree.js

@ -1,233 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
_createBranchTree: function () {
var tree = BI.createWidget({
type: "bi.branch_tree",
items: [{
el: {
text: "且",
value: "且1",
cls: "layout-bg7"
},
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1",
value: "这里是一段文字1"
}, {
el: {
text: "或",
value: "或2",
cls: "layout-bg7"
},
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1435",
value: "这里是一段文字1435"
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1xx",
value: "这里是一段文字1xx"
}, {
el: {
text: "且",
value: "且3",
cls: "layout-bg7"
},
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "可以理解为一个条件",
value: "可以理解为一个条件"
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "可以理解为一个条件v",
value: "可以理解为一个条件v"
}]
}]
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1xa",
value: "这里是一段文字1xa"
}]
}]
});
return tree;
},
_createBranchMapTree: function () {
var tree = BI.createWidget({
type: "bi.branch_tree",
el: {
type: "bi.virtual_group"
},
items: [{
text: "且",
value: "且1",
cls: "layout-bg7",
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1",
value: "这里是一段文字1"
}, {
text: "或",
value: "或2",
cls: "layout-bg7",
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1435",
value: "这里是一段文字1435"
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1xx",
value: "这里是一段文字1xx"
}, {
text: "且",
value: "且3",
cls: "layout-bg7",
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "可以理解为一个条件",
value: "可以理解为一个条件"
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "可以理解为一个条件v",
value: "可以理解为一个条件v"
}]
}]
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1xa",
value: "这里是一段文字1xa"
}]
}]
});
return tree;
},
render: function () {
var tree = this._createBranchTree();
var mapTree = this._createBranchMapTree();
function getItems () {
return [{
text: "且",
value: "且",
cls: "layout-bg7",
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字",
value: "这里是一段文字"
}, {
text: "或",
value: "或2",
cls: "layout-bg7",
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字",
value: "这里是一段文字"
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字",
value: "这里是一段文字"
}, {
text: "且",
value: "且3",
cls: "layout-bg7",
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "可以理解为一个条件",
value: "可以理解为一个条件"
}]
}]
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1xa",
value: "这里是一段文字1xa"
}]
}];
}
BI.createWidget({
type: "bi.center",
element: this,
items: [{
type: "bi.vtape",
items: [{
el: tree
}, {
height: 30,
el: {
type: "bi.button",
height: 30,
text: "getValue",
handler: function () {
BI.Msg.alert("", tree.getValue());
}
}
}]
}, {
type: "bi.vtape",
items: [{
el: mapTree
}, {
height: 30,
el: {
type: "bi.button",
height: 30,
text: "populate",
handler: function () {
mapTree.populate(getItems());
}
}
}, {
height: 30,
el: {
type: "bi.button",
height: 30,
text: "getValue",
handler: function () {
BI.Msg.alert("", mapTree.getValue());
}
}
}]
}]
});
}
});
BI.shortcut("demo.branch_tree", Demo.Func);

103
demo/js/case/tree/demo.handstand_branch_tree.js

@ -1,103 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
_createHandStandBranchTree: function () {
var tree = BI.createWidget({
type: "bi.handstand_branch_tree",
expander: {},
el: {
layouts: [{
type: "bi.horizontal_adapt",
verticalAlign: BI.VerticalAlign.Top
}]
},
items: [{
el: {
text: "且",
value: "且1",
cls: "layout-bg7"
},
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1",
value: "这里是一段文字1"
}, {
el: {
text: "或",
value: "或2",
cls: "layout-bg7"
},
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1435",
value: "这里是一段文字1435"
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1xx",
value: "这里是一段文字1xx"
}, {
el: {
text: "且",
value: "且3",
cls: "layout-bg7"
},
children: [{
type: "bi.label",
height: 30,
textAlign: "left",
text: "可以理解为一个条件",
value: "可以理解为一个条件"
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "可以理解为一个条件v",
value: "可以理解为一个条件v"
}]
}]
}, {
type: "bi.label",
height: 30,
textAlign: "left",
text: "这里是一段文字1xa",
value: "这里是一段文字1xa"
}]
}]
});
return tree;
},
render: function () {
var tree = this._createHandStandBranchTree();
BI.createWidget({
type: "bi.center",
element: this,
items: [{
type: "bi.vtape",
items: [{
el: tree
}, {
height: 30,
el: {
type: "bi.button",
height: 30,
text: "getValue",
handler: function () {
BI.Msg.alert("", tree.getValue());
}
}
}]
}]
});
}
});
BI.shortcut("demo.handstand_branch_tree", Demo.Func);

137
demo/js/category/largeTable/largeTable.js

@ -1,137 +0,0 @@
Demo.Face = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-face"
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.sequence_table",
ref: function () {
self.table = this;
},
isNeedFreeze: null,
isNeedMerge: false,
summaryCellStyleGetter: function (isLast) {
return {
background: "rgb(4, 177, 194)",
color: "#ffffff",
fontWeight: "bold"
};
},
sequenceCellStyleGetter: function (index) {
return {
background: "rgb(4, 177, 194)",
color: "#ffffff",
fontWeight: "bold"
};
},
headerCellStyleGetter: function () {
return {
background: "rgb(4, 177, 194)",
color: "#ffffff",
fontWeight: "bold"
};
},
el: {
type: "bi.adaptive_table",
el: {
type: "bi.resizable_table",
el: {
type: "bi.grid_table"
}
}
},
sequence: {
type: "bi.sequence_table_list_number",
pageSize: 100,
sequenceHeaderCreator: function () {
return {
type: "bi.normal_sequence_header_cell",
styleGetter: function () {
return {
background: "rgb(4, 177, 194)",
color: "#ffffff",
fontWeight: "bold"
};
}
};
}
},
itemsCreator: function (op, populate) {
}
},
left: 0,
right: 0,
top: 0,
bottom: 0
}]
};
},
mounted: function () {
var self = this;
if (BI.isNull(BI.isExpanded)) {
BI.isExpanded = false;
} else if (!BI.isExpanded) {
TABLE_ITEMS = this._expandData(TABLE_ITEMS, 3);
TABLE_HEADER = this._expandHeadData(TABLE_HEADER, 3);
BI.isExpanded = true;
}
this._resizeHandler = BI.debounce(function () {
var width = self.element.width(), height = self.element.height();
if (self.table.getWidth() !== width || self.table.getHeight() !== height) {
self.table.setWidth(width);
self.table.setHeight(height);
self.table.populate();
}
}, 0);
BI.ResizeDetector.addResizeListener(this, function () {
self._resizeHandler();
});
this.table.setWidth(this.element.width());
this.table.setHeight(this.element.height());
this.table.attr("columnSize", BI.makeArray(TABLE_HEADER[0].length, ""));
this.table.attr("minColumnSize", BI.makeArray(TABLE_HEADER[0].length, 60));
this.table.attr("isNeedFreeze", true);
this.table.attr("freezeCols", []);
this.table.attr("showSequence", true);
this.table.attr("headerRowSize", 15);
this.table.attr("rowSize", 15);
this.table.populate(TABLE_ITEMS, TABLE_HEADER);
},
_expandData: function (items, times) {
var copy = BI.deepClone(items);
for (var m = 0; m < times - 1; m++) {
BI.each(items, function (i, row) {
copy.push(row);
});
}
for (var n = 0; n < copy.length; n++) {
for (var m = 0; m < times - 1; m++) {
BI.each(items[n % 100], function (j, item) {
copy[n].push(item);
});
}
}
return copy;
},
_expandHeadData: function (items, times) {
var copy = BI.deepClone(items);
for (var n = 0; n < copy.length; n++) {
for (var m = 0; m < times - 1; m++) {
BI.each(items[n], function (j, item) {
copy[n].push(item);
});
}
}
return copy;
}
});
BI.shortcut("demo.large_table", Demo.Face);

44
demo/js/config/base.js

@ -54,10 +54,6 @@ Demo.BASE_CONFIG = [{
pId: 202,
text: "bi.editor",
value: "demo.editor"
}, {
pId: 202,
text: "bi.code_editor",
value: "demo.code_editor"
}, {
pId: 202,
text: "bi.multifile_editor",
@ -66,18 +62,6 @@ Demo.BASE_CONFIG = [{
pId: 202,
text: "bi.textarea_editor",
value: "demo.textarea_editor"
}, {
pId: 202,
text: "bi.sql_editor",
value: "demo.sql_editor"
}, {
pId: 202,
text: "bi.formula_editor",
value: "demo.formula_editor"
}, {
pId: 202,
text: "bi.rich_editor",
value: "demo.rich_editor"
}, {
pId: 2,
id: 203,
@ -94,36 +78,8 @@ Demo.BASE_CONFIG = [{
pId: 203,
text: "bi.part_tree",
value: "demo.part_tree"
}, {
pId: 2,
id: 204,
text: "table"
}, {
pId: 204,
text: "bi.table_view",
value: "demo.table_view"
}, {
pId: 204,
text: "bi.grid_table",
value: "demo.grid_table"
}, {
pId: 204,
text: "bi.collection_table",
value: "demo.collection_table"
}, {
pId: 204,
text: "bi.resizable_table",
value: "demo.resizable_table"
}, {
pId: 2,
text: "bi.pager",
value: "demo.pager"
}, {
pId: 2,
text: "bi.svg",
value: "demo.svg"
}, {
pId: 2,
text: "bi.canvas",
value: "demo.canvas"
}];

52
demo/js/config/case.js

@ -30,10 +30,6 @@ Demo.CASE_CONFIG = [{
pId: 301,
text: "bi.sign_editor",
value: "demo.sign_editor"
}, {
pId: 301,
text: "bi.sign_initial_editor",
value: "demo.sign_initial_editor"
}, {
pId: 301,
text: "bi.state_editor",
@ -58,14 +54,6 @@ Demo.CASE_CONFIG = [{
pId: 302,
text: "bi.lazy_loader",
value: "demo.lazy_loader"
}, {
pId: 302,
text: "bi.sort_list(排序)",
value: "demo.sort_list"
}, {
pId: 302,
text: "bi.list_loader(排序)",
value: "demo.list_loader"
}, {
pId: 3,
id: 303,
@ -122,10 +110,6 @@ Demo.CASE_CONFIG = [{
pId: 306,
text: "bi.icon_combo",
value: "demo.icon_combo"
}, {
pId: 306,
text: "bi.static_combo",
value: "demo.static_combo"
}, {
pId: 306,
text: "bi.text_value_combo",
@ -154,14 +138,6 @@ Demo.CASE_CONFIG = [{
pId: 3,
id: 307,
text: "tree"
}, {
pId: 307,
text: "bi.branch_tree",
value: "demo.branch_tree"
}, {
pId: 307,
text: "bi.handstand_branch_tree",
value: "demo.handstand_branch_tree"
}, {
pId: 307,
text: "bi.display_tree",
@ -174,26 +150,6 @@ Demo.CASE_CONFIG = [{
pId: 307,
text: "bi.level_tree",
value: "demo.level_tree"
}, {
pId: 307,
text: "bi.branch_relation",
value: "demo.branch_relation"
}, {
pId: 3,
id: 308,
text: "table"
}, {
pId: 308,
text: "bi.adaptive_table",
value: "demo.adaptive_table"
}, {
pId: 308,
text: "bi.tree_table",
value: "demo.tree_table"
}, {
pId: 308,
text: "bi.layer_tree_table",
value: "demo.layer_tree_table"
}, {
pId: 3,
id: 309,
@ -210,14 +166,6 @@ Demo.CASE_CONFIG = [{
pId: 3,
text: "bi.calendar",
value: "demo.calendar"
}, {
pId: 3,
text: "bi.clipboard",
value: "demo.clipboard"
}, {
pId: 3,
text: "bi.complex_canvas",
value: "demo.complex_canvas"
}, {
pId: 3,
text: "bi.color_chooser",

4
demo/js/config/category.js

@ -5,10 +5,6 @@ Demo.CATEGORY_CONFIG = [{
pId: 100000,
text: "自定义一棵树",
value: "demo.platform_level_tree"
}, {
pId: 100000,
text: "大表格",
value: "demo.large_table"
}, {
pId: 100000,
text: "可以排序的树",

32
demo/js/config/widget.js

@ -62,30 +62,6 @@ Demo.WIDGET_CONFIG = [{
pId: 403,
text: "bi.multilayer_select_level_tree",
value: "demo.multilayer_select_level_tree"
}, {
pId: 403,
text: "bi.switch_tree",
value: "demo.switch_tree"
}, {
pId: 4,
id: 404,
text: "table"
}, {
pId: 404,
text: "bi.preview_table",
value: "demo.preview_table"
}, {
pId: 404,
text: "bi.responsive_table",
value: "demo.responsive_table"
}, {
pId: 404,
text: "bi.sequence_table",
value: "demo.sequence_table"
}, {
pId: 404,
text: "bi.page_table",
value: "demo.page_table"
}, {
pId: 4,
id: 405,
@ -210,14 +186,6 @@ Demo.WIDGET_CONFIG = [{
pId: 413,
text: "bi.number_interval",
value: "demo.number_interval"
}, {
pId: 4,
id: 419,
text: "文件管理"
}, {
pId: 419,
text: "bi.file_manager",
value: "demo.file_manager"
}, {
id: 420,
text: "滚动sliders",

14
demo/js/face.js

@ -548,20 +548,16 @@ Demo.Face = BI.inherit(BI.Widget, {
return {
type: "bi.grid",
items: [[{
column: 0,
row: 0,
el: {
type: "demo.preview"
}
}, {
column: 1,
row: 0,
el: {
type: "bi.vertical",
cls: "face-config bi-border-left",
cls: "face-config bi-border-right",
items: [this._createBaseConfig(),
this._createCommonConfig()]
}
}, {
el: {
type: "bi.layout"
}
}]]
};
},

2
demo/js/widget/datetime/demo.datetime.js

@ -15,7 +15,7 @@ Demo.CustomDateTime = BI.inherit(BI.Widget, {
action: function () {
var value = this.getValue();
var date = new Date(value.year, value.month - 1, value.day, value.hour, value.minute, value.second);
var dateStr = date.print("%Y-%X-%d %H:%M:%S");
var dateStr = BI.print(date, "%Y-%X-%d %H:%M:%S");
BI.Msg.alert("日期", dateStr);
}
}, {

54
demo/js/widget/filemanager/demo.filemanager.js

@ -1,54 +0,0 @@
/*
Created by dailer on 2017 / 7 / 21.
*/
Demo.FileManager = BI.inherit(BI.Widget, {
props: {
baseCls: ""
},
render: function () {
var items = [{
id: "1",
value: "1",
text: "根目录",
lastModify: 1454316355142
}, {
id: "11",
pId: "1",
value: "11",
text: "第一级子目录1",
lastModify: 1454316355142
}, {
id: "12",
pId: "1",
value: "12",
text: "第一级子目录2",
lastModify: 1454316355142
}, {
id: "111",
pId: "11",
value: "111",
text: "第二级子目录",
lastModify: 1454316355142
}, {
id: "121",
pId: "111",
buildUrl: "www.baidu.com",
value: "121",
text: "文件1",
lastModify: 1454316355142
}, {
id: "122",
pId: "111",
buildUrl: "www.baidu.com",
value: "122",
text: "文件2",
lastModify: 1454316355142
}];
return {
type: "bi.file_manager",
items: items
};
}
});
BI.shortcut("demo.file_manager", Demo.FileManager);

2
demo/js/widget/multiselect/demo.multi_select_combo.js

@ -39,7 +39,7 @@ Demo.MultiSelectCombo = BI.inherit(BI.Widget, {
_itemsCreator: function (options, callback) {
var self = this;
var items = Demo.CONSTANTS.ITEMS;
var items = [];
var keywords = (options.keywords || []).slice();
if (options.keyword) {
keywords.push(options.keyword);

2
demo/js/widget/multiselect/demo.multi_select_tree.js

@ -42,7 +42,7 @@ Demo.MultiSelectList = BI.inherit(BI.Widget, {
_itemsCreator: function (options, callback) {
var self = this;
var items = Demo.CONSTANTS.ITEMS;
var items = [];
var keywords = (options.keywords || []).slice();
if (options.keyword) {
keywords.push(options.keyword);

2
demo/js/widget/slider/demo.slider.js

@ -45,7 +45,7 @@ Demo.Slider = BI.inherit(BI.Widget, {
normalSingleSlider.populate();
var singleSliderLabel = BI.createWidget({
type: "bi.single_slider",
type: "bi.single_slider_label",
width: o.width,
height: o.height,
digit: 0,

215
demo/js/widget/table/demo.page_table.js

@ -1,215 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [{
children: [{
type: "bi.page_table_cell",
text: "node1",
children: [{
type: "bi.page_table_cell",
text: "childnode1",
values: [{type: "bi.page_table_cell", text: 101}, {
type: "bi.page_table_cell",
text: 102
}, {type: "bi.page_table_cell", text: 101}, {
type: "bi.page_table_cell",
text: 102
}, {type: "bi.page_table_cell", text: 101}]
}, {
type: "bi.page_table_cell",
text: "childnode2",
values: [{type: "bi.page_table_cell", text: 201}, {
type: "bi.page_table_cell",
text: 202
}, {type: "bi.page_table_cell", text: 201}, {
type: "bi.page_table_cell",
text: 202
}, {type: "bi.page_table_cell", text: 201}]
}],
values: [{type: "bi.page_table_cell", text: 1001}, {
type: "bi.page_table_cell",
text: 1002
}, {type: "bi.page_table_cell", text: 1001}, {
type: "bi.page_table_cell",
text: 1002
}, {type: "bi.page_table_cell", text: 1001}]
}], values: [{type: "bi.page_table_cell", text: 12001}, {
type: "bi.page_table_cell",
text: 12002
}, {type: "bi.page_table_cell", text: 12001}, {
type: "bi.page_table_cell",
text: 12002
}, {type: "bi.page_table_cell", text: 12001}]
}];
var header = [{
type: "bi.page_table_cell",
text: "header1"
}, {
type: "bi.page_table_cell",
text: "header2"
}, {
type: "bi.page_table_cell",
text: "jine",
tag: 1
}, {
type: "bi.page_table_cell",
text: "jine",
tag: 2
}, {
type: "bi.page_table_cell",
text: "jine",
tag: 3
}, {
type: "bi.page_table_cell",
text: "金额汇总",
tag: 4
}, {
type: "bi.page_table_cell",
text: "金额汇总2",
tag: 5
}];
var crossHeader = [{
type: "bi.page_table_cell",
text: "cross1"
}, {
type: "bi.page_table_cell",
text: "cross2"
}];
var crossItems = [{
children: [{
type: "bi.page_table_cell",
text: "node1",
values: [1, 2, 3]
}, {
type: "bi.page_table_cell",
text: "node3",
values: [1, 2]
}]
// values: [1, 2]
}];
var table1 = BI.createWidget({
type: "bi.page_table",
el: {
type: "bi.sequence_table",
showSequence: true,
el: {
type: "bi.dynamic_summary_tree_table",
el: {
type: "bi.adaptive_table",
el: {
type: "bi.resizable_table",
el: {
type: "bi.collection_table"
}
}
}
},
sequence: {
type: "bi.sequence_table_dynamic_number"
}
},
summaryCellStyleGetter: function (isLast) {
return isLast ? {
backgroundColor: "#6495ED",
color: "#ffffff"
} : {
backgroundColor: "#B0C4DE",
color: "#ffffff"
};
},
sequenceCellStyleGetter: function (index) {
return {
backgroundColor: "#87CEEB",
color: "#ffffff"
};
},
headerCellStyleGetter: function () {
return {
backgroundColor: "#6495ED",
color: "#ffffff"
};
},
pager: {
horizontal: {
pages: false, // 总页数
curr: 1, // 初始化当前页, pages为数字时可用
hasPrev: function (page) {
return page > 1;
},
hasNext: function (page) {
return page < 3;
}
},
vertical: {
pages: false, // 总页数
curr: 1, // 初始化当前页, pages为数字时可用
hasPrev: function (page) {
return page > 1;
},
hasNext: function (page) {
return page < 3;
}
}
},
itemsCreator: function (op, populate) {
var vpage = op.vpage || "";
var hpage = op.hpage || "";
BI.each(header, function (i, h) {
h.text = h.text + "V" + vpage + "H" + hpage;
});
populate(items, header, crossItems, crossHeader);
},
width: 600,
height: 400,
columnSize: [100, 100, 100, 100, 100, 100, 100],
minColumnSize: [100, 100, 100, 100, 100, 100, 100],
isNeedMerge: true,
isNeedFreeze: true,
mergeCols: [0, 1],
mergeRule: function (col1, col2) {
if (col1 === col2) {
return true;
}
if (col1.tag && col2.tag) {
return col1.tag === col2.tag;
}
return col1 === col2;
},
freezeCols: [0, 1],
header: header,
items: items,
crossHeader: crossHeader,
crossItems: crossItems
});
table1.populate();
// table1.populate(items, header, crossItems, crossHeader);
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.grid",
columns: 1,
rows: 1,
items: [[{
el: table1
}]]
},
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.page_table", Demo.Func);

233
demo/js/widget/table/demo.preview_table.js

@ -1,233 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [[{
text: "第一行第一列"
}, {
text: "第一行第二列"
}, {
text: "第一行第三列"
}], [{
text: "第二行第一列"
}, {
text: "第二行第二列"
}, {
text: "第二行第三列"
}], [{
text: "第二行第一列"
}, {
text: "第三行第二列"
}, {
text: "第三行第三列"
}], [{
text: "第二行第一列"
}, {
text: "第四行第二列"
}, {
text: "第四行第三列"
}], [{
text: "第五行第一列"
}, {
text: "第五行第二列"
}, {
text: "第五行第三列"
}], [{
text: "第六行第一列"
}, {
text: "第六行第二列"
}, {
text: "第六行第三列"
}], [{
text: "第七行第一列"
}, {
text: "第七行第二列"
}, {
text: "第七行第三列"
}], [{
text: "第八行第一列"
}, {
text: "第八行第二列"
}, {
text: "第八行第三列"
}], [{
text: "第九行第一列"
}, {
text: "第九行第二列"
}, {
text: "第九行第三列"
}], [{
text: "第十行第一列"
}, {
text: "第十行第二列"
}, {
text: "第十行第三列"
}], [{
text: "第十一行第一列"
}, {
text: "第十一行第二列"
}, {
text: "第十一行第三列"
}], [{
text: "第十二行第一列"
}, {
text: "第十二行第二列"
}, {
text: "第十二行第三列"
}], [{
text: "第十三行第一列"
}, {
text: "第十三行第二列"
}, {
text: "第十三行第三列"
}], [{
text: "第十四行第一列"
}, {
text: "第十四行第二列"
}, {
text: "第十四行第三列"
}], [{
text: "第十五行第一列"
}, {
text: "第十五行第二列"
}, {
text: "第十五行第三列"
}], [{
text: "第十六行第一列"
}, {
text: "第十六行第二列"
}, {
text: "第十六行第三列"
}], [{
text: "第十七行第一列"
}, {
text: "第十七行第二列"
}, {
text: "第十七行第三列"
}], [{
text: "第十八行第一列"
}, {
text: "第十八行第二列"
}, {
text: "第十八行第三列"
}]];
var header = [[{
text: "表头1"
}, {
text: "表头2"
}, {
text: "表头3"
}]];
var table1 = BI.createWidget({
type: "bi.preview_table",
columnSize: ["", "", ""],
header: header,
items: items
});
var table2 = BI.createWidget({
type: "bi.preview_table",
header: header,
columnSize: [100, "", 50],
items: items
});
var table3 = BI.createWidget({
type: "bi.preview_table",
header: header,
columnSize: [0.2, 0.4, 0.4],
headerRowSize: 30,
items: items
});
var table4 = BI.createWidget({
type: "bi.preview_table",
header: header,
isNeedFreeze: true,
freezeCols: [0, 1],
columnSize: [0.2, "", 0.4],
items: items
});
var table5 = BI.createWidget({
type: "bi.preview_table",
header: header,
isNeedFreeze: true,
freezeCols: [0, 1],
columnSize: [200, 100, ""],
items: items
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.grid",
columns: 3,
rows: 2,
items: [[{
el: {
type: "bi.absolute",
items: [{
el: table1,
left: 5,
right: 5,
top: 5,
bottom: 5
}]
}
}, {
el: {
type: "bi.absolute",
items: [{
el: table2,
left: 5,
right: 5,
top: 5,
bottom: 5
}]
}
}, {
el: {
type: "bi.absolute",
items: [{
el: table3,
left: 5,
right: 5,
top: 5,
bottom: 5
}]
}
}], [{
el: {
type: "bi.absolute",
items: [{
el: table4,
left: 5,
right: 5,
top: 5,
bottom: 5
}]
}
}, {
el: {
type: "bi.absolute",
items: [{
el: table5,
left: 5,
right: 5,
top: 5,
bottom: 5
}]
}
}]]
},
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.preview_table", Demo.Func);

159
demo/js/widget/table/demo.responsive_table.js

@ -1,159 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [[{
text: "第一行第一列"
}, {
text: "第一行第一列"
}, {
text: "第一行第一列"
}], [{
text: "第一行第一列"
}, {
text: "第一行第一列"
}, {
text: "第一行第一列"
}], [{
text: "第三行第一列"
}, {
text: "第三行第二列"
}, {
text: "第三行第三列"
}], [{
text: "第四行第一列"
}, {
text: "第四行第二列"
}, {
text: "第四行第三列"
}], [{
text: "第五行第一列"
}, {
text: "第五行第二列"
}, {
text: "第五行第三列"
}], [{
text: "第六行第一列"
}, {
text: "第六行第二列"
}, {
text: "第六行第三列"
}], [{
text: "第七行第一列"
}, {
text: "第七行第二列"
}, {
text: "第七行第三列"
}], [{
text: "第八行第一列"
}, {
text: "第八行第二列"
}, {
text: "第八行第三列"
}], [{
text: "第九行第一列"
}, {
text: "第九行第二列"
}, {
text: "第九行第三列"
}], [{
text: "第十行第一列"
}, {
text: "第十行第二列"
}, {
text: "第十行第三列"
}], [{
text: "第十一行第一列"
}, {
text: "第十一行第二列"
}, {
text: "第十一行第三列"
}], [{
text: "第十二行第一列"
}, {
text: "第十二行第二列"
}, {
text: "第十二行第三列"
}], [{
text: "第十三行第一列"
}, {
text: "第十三行第二列"
}, {
text: "第十三行第三列"
}], [{
text: "第十四行第一列"
}, {
text: "第十四行第二列"
}, {
text: "第十四行第三列"
}], [{
text: "第十五行第一列"
}, {
text: "第十五行第二列"
}, {
text: "第十五行第三列"
}], [{
text: "第十六行第一列"
}, {
text: "第十六行第二列"
}, {
text: "第十六行第三列"
}], [{
text: "第十七行第一列"
}, {
text: "第十七行第二列"
}, {
text: "第十七行第三列"
}], [{
text: "第十八行第一列"
}, {
text: "第十八行第二列"
}, {
text: "第十八行第三列"
}]];
var header = [[{
text: "表头1"
}, {
text: "表头2"
}, {
text: "表头3"
}]];
var table1 = BI.createWidget({
type: "bi.responsive_table",
isNeedMerge: true,
isNeedFreeze: true,
mergeCols: [0, 1],
items: [],
header: []
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.tab",
showIndex: 1,
cardCreator: function (v) {
switch (v) {
case 1:
table1.attr("columnSize", ["", "", ""]);
table1.populate(items, header);
return table1;
}
}
},
left: 10,
right: 10,
top: 10,
bottom: 10
}]
});
}
});
BI.shortcut("demo.responsive_table", Demo.Func);

159
demo/js/widget/table/demo.sequence_table.js

@ -1,159 +0,0 @@
Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
var items = [{
children: [{
text: "节点1",
children: [{
text: "子节点1",
children: [{
text: "叶节点1",
values: [{text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 112}]
}, {
text: "叶节点2",
values: [{text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 122}]
}],
values: [{text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 1102}]
}, {
text: "子节点2",
children: [{
text: "叶节点3",
values: [{text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 132}]
}, {
text: "叶节点4",
values: [{text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 142}]
}],
values: [{text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 1202}]
}, {
text: "子节点3",
children: [{
text: "叶节点5",
values: [{text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 152}]
}],
values: [{text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 1302}]
}],
values: [{text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 11002}]
}, {
text: "节点2",
values: [{text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 12002}]
}],
values: [{text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 112002}]
}];
var header = [{
text: "header1"
}, {
text: "header2"
}, {
text: "header3"
}, {
text: "金额",
tag: 1
}, {
text: "金额",
tag: 2
}, {
text: "金额",
tag: 3
}, {
text: "金额",
tag: 4
}, {
text: "金额",
tag: 5
}, {
text: "金额",
tag: 6
}, {
text: "金额",
tag: 7
}];
var crossHeader = [{
text: "cross1"
}, {
text: "cross2"
}];
var crossItems = [{
children: [{
text: "节点1",
children: [{
text: "子节点1"
}, {
text: "子节点2"
}],
values: [0]
}, {
text: "节点2",
children: [{
text: "子节点3"
}, {
text: "子节点4"
}],
values: [0]
}],
values: [0]
}];
var table = BI.createWidget({
type: "bi.sequence_table",
el: {
type: "bi.tree_table",
el: {
type: "bi.adaptive_table",
el: {
type: "bi.resizable_table",
el: {
type: "bi.collection_table"
}
}
}
},
sequence: {
type: "bi.sequence_table_tree_number"
},
showSequence: true,
width: 600,
height: 400,
isNeedResize: true,
isNeedMerge: true,
mergeRule: function (row1, row2) {
return row1 === row2;
},
columnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
minColumnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
isNeedFreeze: true,
freezeCols: [0, 1, 2],
mergeCols: [0, 1, 2],
header: header,
items: items,
crossHeader: crossHeader,
crossItems: crossItems
});
BI.createWidget({
type: "bi.absolute",
element: this,
items: [{
el: {
type: "bi.grid",
columns: 1,
rows: 1,
items: [{
column: 0,
row: 0,
el: table
}]
},
left: 10,
right: 10,
top: 10,
bottom: 50
}]
});
}
});
BI.shortcut("demo.sequence_table", Demo.Func);

57
demo/js/widget/tree/demo.switchtree.js

@ -1,57 +0,0 @@
/**
* Created by Dailer on 2017/7/26.
*/
Demo.SwitchTree = BI.inherit(BI.Widget, {
render: function () {
var self = this;
var tree = BI.createWidget({
type: "bi.switch_tree",
items: BI.deepClone(Demo.CONSTANTS.TREE),
value: "第五级文件1"
});
return {
type: "bi.vtape",
items: [{
el: tree
}, {
el: {
type: "bi.button",
height: 25,
text: "点击切换",
handler: function () {
tree.switchSelect();
}
},
height: 25
}, {
el: {
type: "bi.button",
height: 25,
text: "getValue",
handler: function () {
BI.Msg.alert("", JSON.stringify(tree.getValue()));
}
},
height: 25
}, {
el: {
type: "bi.button",
height: 25,
text: "setValue (第二级文件1)",
handler: function () {
tree.setValue(["第二级文件1"]);
}
},
height: 25
}],
width: 500,
hgap: 300
};
}
});
BI.shortcut("demo.switch_tree", Demo.SwitchTree);

54
dist/_fineui.min.js vendored

File diff suppressed because one or more lines are too long

1498
dist/base.css vendored

File diff suppressed because it is too large Load Diff

33208
dist/base.js vendored

File diff suppressed because it is too large Load Diff

2403
dist/bundle.css vendored

File diff suppressed because it is too large Load Diff

134209
dist/bundle.js vendored

File diff suppressed because one or more lines are too long

2
dist/bundle.min.css vendored

File diff suppressed because one or more lines are too long

94
dist/bundle.min.js vendored

File diff suppressed because one or more lines are too long

17004
dist/case.js vendored

File diff suppressed because it is too large Load Diff

431
dist/core.css vendored

@ -249,6 +249,9 @@ a {
a:focus {
outline: 0;
}
div:focus {
outline: none;
}
input::-webkit-contacts-auto-fill-button {
visibility: hidden;
display: none !important;
@ -285,7 +288,7 @@ textarea {
border: 1px solid #3a3c53;
}
.base-disabled {
cursor: default !important;
cursor: not-allowed !important;
color: #9ea6b2 !important;
}
.base-disabled .bi-input {
@ -309,6 +312,17 @@ textarea {
.bi-theme-dark .base-disabled .b-font:before {
color: #606479 !important;
}
.bi-focus-shadow:focus-within,
.bi-focus-shadow:focus,
.bi-focus-shadow:hover {
border-color: #3685f2;
}
.bi-focus-shadow.disabled:hover {
border-color: #e8eaed;
}
.bi-theme-dark .bi-focus-shadow.disabled:hover {
border-color: #3a3c53;
}
.base-invalid {
cursor: default !important;
}
@ -344,6 +358,26 @@ textarea {
.bi-theme-dark .bi-background .bi-textarea {
color: #d6e0dc;
}
.bi-header-background {
background-color: #F2F4F7;
color: #647185;
}
.bi-header-background .bi-input {
color: #647185;
}
.bi-header-background .bi-textarea {
color: #647185;
}
.bi-theme-dark .bi-header-background {
background-color: #2F3149;
color: #afb7c6;
}
.bi-theme-dark .bi-header-background .bi-input {
color: #afb7c6;
}
.bi-theme-dark .bi-header-background .bi-textarea {
color: #afb7c6;
}
.bi-card {
background-color: #ffffff;
color: #3d4d66;
@ -394,40 +428,88 @@ textarea {
.bi-border {
border: 1px solid #e8eaed;
}
.bi-border-radius {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
.bi-border-top {
border-top: 1px solid #e8eaed;
}
.bi-font-bold {
font-weight: 600;
.bi-border-right {
border-right: 1px solid #e8eaed;
}
.bi-theme-dark .bi-border {
border: 1px solid #3a3c53;
.bi-border-bottom {
border-bottom: 1px solid #e8eaed;
}
.bi-border-left {
border-left: 1px solid #e8eaed;
}
.bi-theme-dark .bi-border-left {
border-left: 1px solid #3a3c53;
.bi-theme-dark .bi-border {
border: 1px solid #3a3c53;
}
.bi-border-right {
border-right: 1px solid #e8eaed;
.bi-theme-dark .bi-border-top {
border-top: 1px solid #3a3c53;
}
.bi-theme-dark .bi-border-right {
border-right: 1px solid #3a3c53;
}
.bi-border-top {
border-top: 1px solid #e8eaed;
.bi-theme-dark .bi-border-bottom {
border-bottom: 1px solid #3a3c53;
}
.bi-theme-dark .bi-border-top {
border-top: 1px solid #3a3c53;
.bi-theme-dark .bi-border-left {
border-left: 1px solid #3a3c53;
}
.bi-border-bottom {
border-bottom: 1px solid #e8eaed;
.bi-split {
border: 1px solid #f2f4f7;
}
.bi-theme-dark .bi-border-bottom {
border-bottom: 1px solid #3a3c53;
.bi-split-top {
border-top: 1px solid #f2f4f7;
}
.bi-split-right {
border-right: 1px solid #f2f4f7;
}
.bi-split-bottom {
border-bottom: 1px solid #f2f4f7;
}
.bi-split-left {
border-left: 1px solid #f2f4f7;
}
.bi-theme-dark .bi-split {
border: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-top {
border-top: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-right {
border-right: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-bottom {
border-bottom: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-left {
border-left: 1px solid #2F3149;
}
.bi-font-helvetica-neue {
font-family: "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Heiti, serif;
}
.bi-font-arial {
font-family: Arial, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Heiti, serif;
}
.bi-font-PingFang {
font-family: "PingFang SC", "Helvetica Neue", Arial, "Hiragino Sans GB", "Microsoft YaHei", Heiti, serif;
}
.bi-font-hiragino-sans {
font-family: "Hiragino Sans GB", "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", Heiti, serif;
}
.bi-font-microsoft-yaHei {
font-family: "Microsoft YaHei", "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", Heiti, serif;
}
.bi-font-heiti {
font-family: Heiti, "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", serif;
}
.bi-border-radius {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
}
.bi-font-bold {
font-weight: 700;
}
.bi-keyword-red-mark {
color: #faaa39;
@ -533,6 +615,10 @@ textarea {
background-color: rgba(35, 46, 64, 0.5);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#80232e40,endColorstr=#80232e40);
}
.bi-theme-dark .bi-z-index-mask {
background-color: rgba(25, 27, 43, 0.8);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#cc191b2b,endColorstr=#cc191b2b);
}
.bi-list-item:hover,
.bi-list-item.hover {
color: #232e40;
@ -829,6 +915,8 @@ textarea {
.bi-list-item-active2:hover,
.bi-list-item-active2.hover {
color: #232e40;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active2:hover .bi-input,
.bi-list-item-active2.hover .bi-input {
@ -838,34 +926,19 @@ textarea {
.bi-list-item-active2.hover .bi-textarea {
color: #232e40;
}
.bi-list-item-active2:hover.bi-border,
.bi-list-item-active2.hover.bi-border {
border-color: #3685f2;
}
.bi-list-item-active2:active {
color: #3685f2;
}
.bi-list-item-active2:active .bi-input {
color: #3685f2;
}
.bi-list-item-active2:active .bi-textarea {
color: #3685f2;
}
.bi-list-item-active2:active.bi-border {
border-color: #3685f2;
}
.bi-list-item-active2:active,
.bi-list-item-active2.active {
color: #ffffff;
background-color: #3685f2;
color: #3685f2;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active2:active .bi-input,
.bi-list-item-active2.active .bi-input {
color: #ffffff;
color: #3685f2;
}
.bi-list-item-active2:active .bi-textarea,
.bi-list-item-active2.active .bi-textarea {
color: #ffffff;
}
.bi-list-item-active2.active.bi-border {
border-color: #3685f2;
color: #3685f2;
}
.bi-list-item-active2.disabled,
.bi-list-item-active2.disabled:hover,
@ -891,7 +964,8 @@ textarea {
.bi-theme-dark .bi-list-item-active2:hover,
.bi-theme-dark .bi-list-item-active2.hover {
color: #ffffff;
background-color: #242640;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active2:hover .bi-input,
.bi-theme-dark .bi-list-item-active2.hover .bi-input {
@ -901,17 +975,18 @@ textarea {
.bi-theme-dark .bi-list-item-active2.hover .bi-textarea {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-active2.active,
.bi-theme-dark .bi-list-item-active2:active {
.bi-theme-dark .bi-list-item-active2:active,
.bi-theme-dark .bi-list-item-active2.active {
color: #3685f2;
background-color: #242640;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active2.active .bi-input,
.bi-theme-dark .bi-list-item-active2:active .bi-input {
.bi-theme-dark .bi-list-item-active2:active .bi-input,
.bi-theme-dark .bi-list-item-active2.active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active2.active .bi-textarea,
.bi-theme-dark .bi-list-item-active2:active .bi-textarea {
.bi-theme-dark .bi-list-item-active2:active .bi-textarea,
.bi-theme-dark .bi-list-item-active2.active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active2.disabled,
@ -935,104 +1010,6 @@ textarea {
.bi-theme-dark .bi-list-item-active2.disabled:active .bi-high-light {
color: #878d9f !important;
}
.bi-list-item-active3:hover,
.bi-list-item-active3.hover {
color: #232e40;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active3:hover .bi-input,
.bi-list-item-active3.hover .bi-input {
color: #232e40;
}
.bi-list-item-active3:hover .bi-textarea,
.bi-list-item-active3.hover .bi-textarea {
color: #232e40;
}
.bi-list-item-active3:active,
.bi-list-item-active3.active {
color: #3685f2;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active3:active .bi-input,
.bi-list-item-active3.active .bi-input {
color: #3685f2;
}
.bi-list-item-active3:active .bi-textarea,
.bi-list-item-active3.active .bi-textarea {
color: #3685f2;
}
.bi-list-item-active3.disabled,
.bi-list-item-active3.disabled:hover,
.bi-list-item-active3.disabled:active {
background-color: transparent !important;
color: #9ea6b2 !important;
}
.bi-list-item-active3.disabled .bi-input,
.bi-list-item-active3.disabled:hover .bi-input,
.bi-list-item-active3.disabled:active .bi-input {
color: #9ea6b2 !important;
}
.bi-list-item-active3.disabled .bi-textarea,
.bi-list-item-active3.disabled:hover .bi-textarea,
.bi-list-item-active3.disabled:active .bi-textarea {
color: #9ea6b2 !important;
}
.bi-list-item-active3.disabled .bi-high-light,
.bi-list-item-active3.disabled:hover .bi-high-light,
.bi-list-item-active3.disabled:active .bi-high-light {
color: #9ea6b2 !important;
}
.bi-theme-dark .bi-list-item-active3:hover,
.bi-theme-dark .bi-list-item-active3.hover {
color: #ffffff;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active3:hover .bi-input,
.bi-theme-dark .bi-list-item-active3.hover .bi-input {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-active3:hover .bi-textarea,
.bi-theme-dark .bi-list-item-active3.hover .bi-textarea {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-active3:active,
.bi-theme-dark .bi-list-item-active3.active {
color: #3685f2;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active3:active .bi-input,
.bi-theme-dark .bi-list-item-active3.active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active3:active .bi-textarea,
.bi-theme-dark .bi-list-item-active3.active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active3.disabled,
.bi-theme-dark .bi-list-item-active3.disabled:hover,
.bi-theme-dark .bi-list-item-active3.disabled:active {
background-color: transparent !important;
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-active3.disabled .bi-input,
.bi-theme-dark .bi-list-item-active3.disabled:hover .bi-input,
.bi-theme-dark .bi-list-item-active3.disabled:active .bi-input {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-active3.disabled .bi-textarea,
.bi-theme-dark .bi-list-item-active3.disabled:hover .bi-textarea,
.bi-theme-dark .bi-list-item-active3.disabled:active .bi-textarea {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-active3.disabled .bi-high-light,
.bi-theme-dark .bi-list-item-active3.disabled:hover .bi-high-light,
.bi-theme-dark .bi-list-item-active3.disabled:active .bi-high-light {
color: #878d9f !important;
}
.bi-list-item-select:hover,
.bi-list-item-select.hover {
background-color: rgba(54, 133, 242, 0.06);
@ -1172,31 +1149,159 @@ textarea {
}
.bi-list-item-select2:hover,
.bi-list-item-select2.hover {
background-color: #f7f8fa;
color: #232e40;
}
.bi-list-item-select2:hover .bi-input,
.bi-list-item-select2.hover .bi-input {
color: #232e40;
}
.bi-list-item-select2:hover .bi-textarea,
.bi-list-item-select2.hover .bi-textarea {
color: #232e40;
}
.bi-list-item-select2:hover.bi-border,
.bi-list-item-select2.hover.bi-border {
border-color: #3685f2;
}
.bi-list-item-select2:active {
color: #3685f2;
}
.bi-list-item-select2:active .bi-input {
color: #3685f2;
}
.bi-list-item-select2:active .bi-textarea {
color: #3685f2;
}
.bi-list-item-select2:active.bi-border {
border-color: #3685f2;
}
.bi-list-item-select2:active,
.bi-list-item-select2.active {
color: #ffffff;
background-color: #f7f8fa;
background-color: #3685f2;
}
.bi-list-item-select2:active .bi-input,
.bi-list-item-select2.active .bi-input {
color: #3685f2;
color: #ffffff;
}
.bi-list-item-select2:active .bi-textarea,
.bi-list-item-select2.active .bi-textarea {
color: #3685f2;
}
.bi-list-item-select2:active .bi-high-light,
.bi-list-item-select2.active .bi-high-light {
color: #ffffff;
}
.bi-list-item-select2.active.bi-border {
border-color: #3685f2;
}
.bi-list-item-select2.disabled,
.bi-list-item-select2.disabled:hover,
.bi-list-item-select2.disabled.hover,
.bi-list-item-select2.disabled:active,
.bi-list-item-select2.disabled.active {
.bi-list-item-select2.disabled:active {
background-color: transparent !important;
color: #9ea6b2 !important;
}
.bi-list-item-select2.disabled .bi-input,
.bi-list-item-select2.disabled:hover .bi-input,
.bi-list-item-select2.disabled:active .bi-input {
color: #9ea6b2 !important;
}
.bi-list-item-select2.disabled .bi-textarea,
.bi-list-item-select2.disabled:hover .bi-textarea,
.bi-list-item-select2.disabled:active .bi-textarea {
color: #9ea6b2 !important;
}
.bi-list-item-select2.disabled .bi-high-light,
.bi-list-item-select2.disabled:hover .bi-high-light,
.bi-list-item-select2.disabled:active .bi-high-light {
color: #9ea6b2 !important;
}
.bi-theme-dark .bi-list-item-select2:hover,
.bi-theme-dark .bi-list-item-select2.hover {
color: #ffffff;
background-color: #242640;
}
.bi-theme-dark .bi-list-item-select2:hover .bi-input,
.bi-theme-dark .bi-list-item-select2.hover .bi-input {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-select2:hover .bi-textarea,
.bi-theme-dark .bi-list-item-select2.hover .bi-textarea {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-select2.active,
.bi-theme-dark .bi-list-item-select2:active {
color: #3685f2;
background-color: #242640;
}
.bi-theme-dark .bi-list-item-select2.active .bi-input,
.bi-theme-dark .bi-list-item-select2:active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select2.active .bi-textarea,
.bi-theme-dark .bi-list-item-select2:active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select2.disabled,
.bi-theme-dark .bi-list-item-select2.disabled:hover,
.bi-theme-dark .bi-list-item-select2.disabled:active {
background-color: transparent !important;
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-select2.disabled .bi-input,
.bi-theme-dark .bi-list-item-select2.disabled:hover .bi-input,
.bi-theme-dark .bi-list-item-select2.disabled:active .bi-input {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-select2.disabled .bi-textarea,
.bi-theme-dark .bi-list-item-select2.disabled:hover .bi-textarea,
.bi-theme-dark .bi-list-item-select2.disabled:active .bi-textarea {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-select2.disabled .bi-high-light,
.bi-theme-dark .bi-list-item-select2.disabled:hover .bi-high-light,
.bi-theme-dark .bi-list-item-select2.disabled:active .bi-high-light {
color: #878d9f !important;
}
.bi-list-item-select3:hover,
.bi-list-item-select3.hover {
background-color: #f7f8fa;
}
.bi-list-item-select3:active,
.bi-list-item-select3.active {
color: #3685f2;
background-color: #f7f8fa;
}
.bi-list-item-select3:active .bi-input,
.bi-list-item-select3.active .bi-input {
color: #3685f2;
}
.bi-list-item-select3:active .bi-textarea,
.bi-list-item-select3.active .bi-textarea {
color: #3685f2;
}
.bi-list-item-select3.disabled:hover,
.bi-list-item-select3.disabled.hover,
.bi-list-item-select3.disabled:active,
.bi-list-item-select3.disabled.active {
background-color: #ffffff !important;
}
.bi-theme-dark .bi-list-item-select3:hover,
.bi-theme-dark .bi-list-item-select3.hover {
background-color: #191B2B;
}
.bi-theme-dark .bi-list-item-select3:active,
.bi-theme-dark .bi-list-item-select3.active {
color: #3685f2;
background-color: #191B2B;
}
.bi-theme-dark .bi-list-item-select3:active .bi-input,
.bi-theme-dark .bi-list-item-select3.active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select3:active .bi-textarea,
.bi-theme-dark .bi-list-item-select3.active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select3.disabled:hover,
.bi-theme-dark .bi-list-item-select3.disabled.hover,
.bi-theme-dark .bi-list-item-select3.disabled:active,
.bi-theme-dark .bi-list-item-select3.disabled.active {
background-color: #242640 !important;
}
.bi-theme-dark .bi-list-item-select:hover,
.bi-theme-dark .bi-list-item-select.hover {
color: #ffffff;

56665
dist/core.js vendored

File diff suppressed because one or more lines are too long

428
dist/core_without_normalize.css vendored

@ -7,7 +7,7 @@ textarea {
border: 1px solid #3a3c53;
}
.base-disabled {
cursor: default !important;
cursor: not-allowed !important;
color: #9ea6b2 !important;
}
.base-disabled .bi-input {
@ -31,6 +31,17 @@ textarea {
.bi-theme-dark .base-disabled .b-font:before {
color: #606479 !important;
}
.bi-focus-shadow:focus-within,
.bi-focus-shadow:focus,
.bi-focus-shadow:hover {
border-color: #3685f2;
}
.bi-focus-shadow.disabled:hover {
border-color: #e8eaed;
}
.bi-theme-dark .bi-focus-shadow.disabled:hover {
border-color: #3a3c53;
}
.base-invalid {
cursor: default !important;
}
@ -66,6 +77,26 @@ textarea {
.bi-theme-dark .bi-background .bi-textarea {
color: #d6e0dc;
}
.bi-header-background {
background-color: #F2F4F7;
color: #647185;
}
.bi-header-background .bi-input {
color: #647185;
}
.bi-header-background .bi-textarea {
color: #647185;
}
.bi-theme-dark .bi-header-background {
background-color: #2F3149;
color: #afb7c6;
}
.bi-theme-dark .bi-header-background .bi-input {
color: #afb7c6;
}
.bi-theme-dark .bi-header-background .bi-textarea {
color: #afb7c6;
}
.bi-card {
background-color: #ffffff;
color: #3d4d66;
@ -116,40 +147,88 @@ textarea {
.bi-border {
border: 1px solid #e8eaed;
}
.bi-border-radius {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
.bi-border-top {
border-top: 1px solid #e8eaed;
}
.bi-font-bold {
font-weight: 600;
.bi-border-right {
border-right: 1px solid #e8eaed;
}
.bi-theme-dark .bi-border {
border: 1px solid #3a3c53;
.bi-border-bottom {
border-bottom: 1px solid #e8eaed;
}
.bi-border-left {
border-left: 1px solid #e8eaed;
}
.bi-theme-dark .bi-border-left {
border-left: 1px solid #3a3c53;
.bi-theme-dark .bi-border {
border: 1px solid #3a3c53;
}
.bi-border-right {
border-right: 1px solid #e8eaed;
.bi-theme-dark .bi-border-top {
border-top: 1px solid #3a3c53;
}
.bi-theme-dark .bi-border-right {
border-right: 1px solid #3a3c53;
}
.bi-border-top {
border-top: 1px solid #e8eaed;
.bi-theme-dark .bi-border-bottom {
border-bottom: 1px solid #3a3c53;
}
.bi-theme-dark .bi-border-top {
border-top: 1px solid #3a3c53;
.bi-theme-dark .bi-border-left {
border-left: 1px solid #3a3c53;
}
.bi-border-bottom {
border-bottom: 1px solid #e8eaed;
.bi-split {
border: 1px solid #f2f4f7;
}
.bi-theme-dark .bi-border-bottom {
border-bottom: 1px solid #3a3c53;
.bi-split-top {
border-top: 1px solid #f2f4f7;
}
.bi-split-right {
border-right: 1px solid #f2f4f7;
}
.bi-split-bottom {
border-bottom: 1px solid #f2f4f7;
}
.bi-split-left {
border-left: 1px solid #f2f4f7;
}
.bi-theme-dark .bi-split {
border: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-top {
border-top: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-right {
border-right: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-bottom {
border-bottom: 1px solid #2F3149;
}
.bi-theme-dark .bi-split-left {
border-left: 1px solid #2F3149;
}
.bi-font-helvetica-neue {
font-family: "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Heiti, serif;
}
.bi-font-arial {
font-family: Arial, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Heiti, serif;
}
.bi-font-PingFang {
font-family: "PingFang SC", "Helvetica Neue", Arial, "Hiragino Sans GB", "Microsoft YaHei", Heiti, serif;
}
.bi-font-hiragino-sans {
font-family: "Hiragino Sans GB", "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", Heiti, serif;
}
.bi-font-microsoft-yaHei {
font-family: "Microsoft YaHei", "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", Heiti, serif;
}
.bi-font-heiti {
font-family: Heiti, "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", serif;
}
.bi-border-radius {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
}
.bi-font-bold {
font-weight: 700;
}
.bi-keyword-red-mark {
color: #faaa39;
@ -255,6 +334,10 @@ textarea {
background-color: rgba(35, 46, 64, 0.5);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#80232e40,endColorstr=#80232e40);
}
.bi-theme-dark .bi-z-index-mask {
background-color: rgba(25, 27, 43, 0.8);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#cc191b2b,endColorstr=#cc191b2b);
}
.bi-list-item:hover,
.bi-list-item.hover {
color: #232e40;
@ -551,6 +634,8 @@ textarea {
.bi-list-item-active2:hover,
.bi-list-item-active2.hover {
color: #232e40;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active2:hover .bi-input,
.bi-list-item-active2.hover .bi-input {
@ -560,34 +645,19 @@ textarea {
.bi-list-item-active2.hover .bi-textarea {
color: #232e40;
}
.bi-list-item-active2:hover.bi-border,
.bi-list-item-active2.hover.bi-border {
border-color: #3685f2;
}
.bi-list-item-active2:active {
color: #3685f2;
}
.bi-list-item-active2:active .bi-input {
color: #3685f2;
}
.bi-list-item-active2:active .bi-textarea {
color: #3685f2;
}
.bi-list-item-active2:active.bi-border {
border-color: #3685f2;
}
.bi-list-item-active2:active,
.bi-list-item-active2.active {
color: #ffffff;
background-color: #3685f2;
color: #3685f2;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active2:active .bi-input,
.bi-list-item-active2.active .bi-input {
color: #ffffff;
color: #3685f2;
}
.bi-list-item-active2:active .bi-textarea,
.bi-list-item-active2.active .bi-textarea {
color: #ffffff;
}
.bi-list-item-active2.active.bi-border {
border-color: #3685f2;
color: #3685f2;
}
.bi-list-item-active2.disabled,
.bi-list-item-active2.disabled:hover,
@ -613,7 +683,8 @@ textarea {
.bi-theme-dark .bi-list-item-active2:hover,
.bi-theme-dark .bi-list-item-active2.hover {
color: #ffffff;
background-color: #242640;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active2:hover .bi-input,
.bi-theme-dark .bi-list-item-active2.hover .bi-input {
@ -623,17 +694,18 @@ textarea {
.bi-theme-dark .bi-list-item-active2.hover .bi-textarea {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-active2.active,
.bi-theme-dark .bi-list-item-active2:active {
.bi-theme-dark .bi-list-item-active2:active,
.bi-theme-dark .bi-list-item-active2.active {
color: #3685f2;
background-color: #242640;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active2.active .bi-input,
.bi-theme-dark .bi-list-item-active2:active .bi-input {
.bi-theme-dark .bi-list-item-active2:active .bi-input,
.bi-theme-dark .bi-list-item-active2.active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active2.active .bi-textarea,
.bi-theme-dark .bi-list-item-active2:active .bi-textarea {
.bi-theme-dark .bi-list-item-active2:active .bi-textarea,
.bi-theme-dark .bi-list-item-active2.active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active2.disabled,
@ -657,104 +729,6 @@ textarea {
.bi-theme-dark .bi-list-item-active2.disabled:active .bi-high-light {
color: #878d9f !important;
}
.bi-list-item-active3:hover,
.bi-list-item-active3.hover {
color: #232e40;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active3:hover .bi-input,
.bi-list-item-active3.hover .bi-input {
color: #232e40;
}
.bi-list-item-active3:hover .bi-textarea,
.bi-list-item-active3.hover .bi-textarea {
color: #232e40;
}
.bi-list-item-active3:active,
.bi-list-item-active3.active {
color: #3685f2;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-list-item-active3:active .bi-input,
.bi-list-item-active3.active .bi-input {
color: #3685f2;
}
.bi-list-item-active3:active .bi-textarea,
.bi-list-item-active3.active .bi-textarea {
color: #3685f2;
}
.bi-list-item-active3.disabled,
.bi-list-item-active3.disabled:hover,
.bi-list-item-active3.disabled:active {
background-color: transparent !important;
color: #9ea6b2 !important;
}
.bi-list-item-active3.disabled .bi-input,
.bi-list-item-active3.disabled:hover .bi-input,
.bi-list-item-active3.disabled:active .bi-input {
color: #9ea6b2 !important;
}
.bi-list-item-active3.disabled .bi-textarea,
.bi-list-item-active3.disabled:hover .bi-textarea,
.bi-list-item-active3.disabled:active .bi-textarea {
color: #9ea6b2 !important;
}
.bi-list-item-active3.disabled .bi-high-light,
.bi-list-item-active3.disabled:hover .bi-high-light,
.bi-list-item-active3.disabled:active .bi-high-light {
color: #9ea6b2 !important;
}
.bi-theme-dark .bi-list-item-active3:hover,
.bi-theme-dark .bi-list-item-active3.hover {
color: #ffffff;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active3:hover .bi-input,
.bi-theme-dark .bi-list-item-active3.hover .bi-input {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-active3:hover .bi-textarea,
.bi-theme-dark .bi-list-item-active3.hover .bi-textarea {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-active3:active,
.bi-theme-dark .bi-list-item-active3.active {
color: #3685f2;
background-color: rgba(54, 133, 242, 0.06);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#0f3685f2,endColorstr=#0f3685f2);
}
.bi-theme-dark .bi-list-item-active3:active .bi-input,
.bi-theme-dark .bi-list-item-active3.active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active3:active .bi-textarea,
.bi-theme-dark .bi-list-item-active3.active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-active3.disabled,
.bi-theme-dark .bi-list-item-active3.disabled:hover,
.bi-theme-dark .bi-list-item-active3.disabled:active {
background-color: transparent !important;
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-active3.disabled .bi-input,
.bi-theme-dark .bi-list-item-active3.disabled:hover .bi-input,
.bi-theme-dark .bi-list-item-active3.disabled:active .bi-input {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-active3.disabled .bi-textarea,
.bi-theme-dark .bi-list-item-active3.disabled:hover .bi-textarea,
.bi-theme-dark .bi-list-item-active3.disabled:active .bi-textarea {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-active3.disabled .bi-high-light,
.bi-theme-dark .bi-list-item-active3.disabled:hover .bi-high-light,
.bi-theme-dark .bi-list-item-active3.disabled:active .bi-high-light {
color: #878d9f !important;
}
.bi-list-item-select:hover,
.bi-list-item-select.hover {
background-color: rgba(54, 133, 242, 0.06);
@ -894,31 +868,159 @@ textarea {
}
.bi-list-item-select2:hover,
.bi-list-item-select2.hover {
background-color: #f7f8fa;
color: #232e40;
}
.bi-list-item-select2:hover .bi-input,
.bi-list-item-select2.hover .bi-input {
color: #232e40;
}
.bi-list-item-select2:hover .bi-textarea,
.bi-list-item-select2.hover .bi-textarea {
color: #232e40;
}
.bi-list-item-select2:hover.bi-border,
.bi-list-item-select2.hover.bi-border {
border-color: #3685f2;
}
.bi-list-item-select2:active {
color: #3685f2;
}
.bi-list-item-select2:active .bi-input {
color: #3685f2;
}
.bi-list-item-select2:active .bi-textarea {
color: #3685f2;
}
.bi-list-item-select2:active.bi-border {
border-color: #3685f2;
}
.bi-list-item-select2:active,
.bi-list-item-select2.active {
color: #ffffff;
background-color: #f7f8fa;
background-color: #3685f2;
}
.bi-list-item-select2:active .bi-input,
.bi-list-item-select2.active .bi-input {
color: #3685f2;
color: #ffffff;
}
.bi-list-item-select2:active .bi-textarea,
.bi-list-item-select2.active .bi-textarea {
color: #3685f2;
}
.bi-list-item-select2:active .bi-high-light,
.bi-list-item-select2.active .bi-high-light {
color: #ffffff;
}
.bi-list-item-select2.active.bi-border {
border-color: #3685f2;
}
.bi-list-item-select2.disabled,
.bi-list-item-select2.disabled:hover,
.bi-list-item-select2.disabled.hover,
.bi-list-item-select2.disabled:active,
.bi-list-item-select2.disabled.active {
.bi-list-item-select2.disabled:active {
background-color: transparent !important;
color: #9ea6b2 !important;
}
.bi-list-item-select2.disabled .bi-input,
.bi-list-item-select2.disabled:hover .bi-input,
.bi-list-item-select2.disabled:active .bi-input {
color: #9ea6b2 !important;
}
.bi-list-item-select2.disabled .bi-textarea,
.bi-list-item-select2.disabled:hover .bi-textarea,
.bi-list-item-select2.disabled:active .bi-textarea {
color: #9ea6b2 !important;
}
.bi-list-item-select2.disabled .bi-high-light,
.bi-list-item-select2.disabled:hover .bi-high-light,
.bi-list-item-select2.disabled:active .bi-high-light {
color: #9ea6b2 !important;
}
.bi-theme-dark .bi-list-item-select2:hover,
.bi-theme-dark .bi-list-item-select2.hover {
color: #ffffff;
background-color: #242640;
}
.bi-theme-dark .bi-list-item-select2:hover .bi-input,
.bi-theme-dark .bi-list-item-select2.hover .bi-input {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-select2:hover .bi-textarea,
.bi-theme-dark .bi-list-item-select2.hover .bi-textarea {
color: #ffffff;
}
.bi-theme-dark .bi-list-item-select2.active,
.bi-theme-dark .bi-list-item-select2:active {
color: #3685f2;
background-color: #242640;
}
.bi-theme-dark .bi-list-item-select2.active .bi-input,
.bi-theme-dark .bi-list-item-select2:active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select2.active .bi-textarea,
.bi-theme-dark .bi-list-item-select2:active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select2.disabled,
.bi-theme-dark .bi-list-item-select2.disabled:hover,
.bi-theme-dark .bi-list-item-select2.disabled:active {
background-color: transparent !important;
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-select2.disabled .bi-input,
.bi-theme-dark .bi-list-item-select2.disabled:hover .bi-input,
.bi-theme-dark .bi-list-item-select2.disabled:active .bi-input {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-select2.disabled .bi-textarea,
.bi-theme-dark .bi-list-item-select2.disabled:hover .bi-textarea,
.bi-theme-dark .bi-list-item-select2.disabled:active .bi-textarea {
color: #878d9f !important;
}
.bi-theme-dark .bi-list-item-select2.disabled .bi-high-light,
.bi-theme-dark .bi-list-item-select2.disabled:hover .bi-high-light,
.bi-theme-dark .bi-list-item-select2.disabled:active .bi-high-light {
color: #878d9f !important;
}
.bi-list-item-select3:hover,
.bi-list-item-select3.hover {
background-color: #f7f8fa;
}
.bi-list-item-select3:active,
.bi-list-item-select3.active {
color: #3685f2;
background-color: #f7f8fa;
}
.bi-list-item-select3:active .bi-input,
.bi-list-item-select3.active .bi-input {
color: #3685f2;
}
.bi-list-item-select3:active .bi-textarea,
.bi-list-item-select3.active .bi-textarea {
color: #3685f2;
}
.bi-list-item-select3.disabled:hover,
.bi-list-item-select3.disabled.hover,
.bi-list-item-select3.disabled:active,
.bi-list-item-select3.disabled.active {
background-color: #ffffff !important;
}
.bi-theme-dark .bi-list-item-select3:hover,
.bi-theme-dark .bi-list-item-select3.hover {
background-color: #191B2B;
}
.bi-theme-dark .bi-list-item-select3:active,
.bi-theme-dark .bi-list-item-select3.active {
color: #3685f2;
background-color: #191B2B;
}
.bi-theme-dark .bi-list-item-select3:active .bi-input,
.bi-theme-dark .bi-list-item-select3.active .bi-input {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select3:active .bi-textarea,
.bi-theme-dark .bi-list-item-select3.active .bi-textarea {
color: #3685f2;
}
.bi-theme-dark .bi-list-item-select3.disabled:hover,
.bi-theme-dark .bi-list-item-select3.disabled.hover,
.bi-theme-dark .bi-list-item-select3.disabled:active,
.bi-theme-dark .bi-list-item-select3.disabled.active {
background-color: #242640 !important;
}
.bi-theme-dark .bi-list-item-select:hover,
.bi-theme-dark .bi-list-item-select.hover {
color: #ffffff;

6066
dist/demo.js vendored

File diff suppressed because it is too large Load Diff

2403
dist/fineui.css vendored

File diff suppressed because it is too large Load Diff

134379
dist/fineui.js vendored

File diff suppressed because one or more lines are too long

2
dist/fineui.min.css vendored

File diff suppressed because one or more lines are too long

366
dist/fineui.min.js vendored

File diff suppressed because one or more lines are too long

65061
dist/fineui_without_jquery_polyfill.js vendored

File diff suppressed because one or more lines are too long

46
dist/fix/fix.compact.js vendored

@ -1,5 +1,5 @@
;(function () {
function initWatch (vm, watch) {
function initWatch(vm, watch) {
vm._watchers || (vm._watchers = []);
for (var key in watch) {
var handler = watch[key];
@ -13,7 +13,7 @@
}
}
function createWatcher (vm, keyOrFn, handler) {
function createWatcher(vm, keyOrFn, handler) {
return Fix.watch(vm.model, keyOrFn, _.bind(handler, vm), {
store: vm.store
});
@ -22,24 +22,24 @@
var target = null;
var targetStack = [];
function pushTarget (_target) {
function pushTarget(_target) {
if (target) targetStack.push(target);
Fix.Model.target = target = _target;
}
function popTarget () {
function popTarget() {
Fix.Model.target = target = targetStack.pop();
}
var context = null;
var contextStack = [];
function pushContext (_context) {
function pushContext(_context) {
if (context) contextStack.push(context);
Fix.Model.context = context = _context;
}
function popContext () {
function popContext() {
Fix.Model.context = context = contextStack.pop();
}
@ -60,7 +60,7 @@
}, options);
};
function findStore (widget) {
function findStore(widget) {
if (target != null) {
return target;
}
@ -106,11 +106,9 @@
};
});
var _init = BI.Widget.prototype._init;
BI.Widget.prototype._init = function () {
var self = this;
function createStore() {
var needPop = false;
if (window.Fix && this._store) {
if (_global.Fix && this._store) {
var store = findStore(this.options.context || this.options.element);
if (store) {
pushTarget(store);
@ -128,6 +126,13 @@
}
needPop = true;
}
return needPop;
}
var _init = BI.Widget.prototype._init;
BI.Widget.prototype._init = function () {
var self = this;
var needPop = createStore.call(this);
_init.apply(this, arguments);
needPop && popTarget();
};
@ -135,7 +140,7 @@
var _render = BI.Widget.prototype._render;
BI.Widget.prototype._render = function () {
var needPop = false;
if (window.Fix && this._store) {
if (_global.Fix && this._store) {
needPop = true;
pushTarget(this.store);
initWatch(this, this.watch);
@ -173,7 +178,7 @@
});
});
if (BI.isIE9Below()) {
if (BI.isIE9Below && BI.isIE9Below()) {
_.each(["each", "map", "reduce", "reduceRight", "find", "filter", "reject", "every", "all", "some", "any", "max", "min",
"sortBy", "groupBy", "indexBy", "countBy", "partition",
"keys", "allKeys", "values", "pairs", "invert",
@ -212,6 +217,21 @@
}
return values;
};
BI.extend = function () {
var args = Array.prototype.slice.call(arguments);
if (args.length < 1) {
return {};
}
var object = args[0];
var i = 1;
while (i < args.length) {
BI.each(args[i], function (key, v) {
object[key] = v;
});
i++;
}
return object;
};
BI.size = function (ob) {
if (BI.isPlainObject(ob) && ob.__ob__) {
return BI.keys(ob).length;

107
dist/fix/fix.js vendored

@ -24,12 +24,18 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
var hasProto = '__proto__' in {};
var isIE = function isIE() {
if (typeof navigator === "undefined") {
return false;
}
return (/(msie|trident)/i.test(navigator.userAgent.toLowerCase())
);
};
var getIEVersion = function getIEVersion() {
var version = 0;
if (typeof navigator === "undefined") {
return false;
}
var agent = navigator.userAgent.toLowerCase();
var v1 = agent.match(/(?:msie\s([\w.]+))/);
var v2 = agent.match(/(?:trident.*rv:([\w.]+))/);
@ -105,8 +111,8 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
setImmediate(nextTickHandler);
};
} else if (typeof MessageChannel !== 'undefined' && (isNative(MessageChannel) ||
// PhantomJS
MessageChannel.toString() === '[object MessageChannelConstructor]')) {
// PhantomJS
MessageChannel.toString() === '[object MessageChannelConstructor]')) {
var channel = new MessageChannel();
var port = channel.port2;
channel.port1.onmessage = nextTickHandler;
@ -114,19 +120,19 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
port.postMessage(1);
};
} else
/* istanbul ignore next */
if (typeof Promise !== 'undefined' && isNative(Promise)) {
// use microtask in non-DOM environments, e.g. Weex
var p = Promise.resolve();
timerFunc = function timerFunc() {
p.then(nextTickHandler);
};
} else {
// fallback to setTimeout
timerFunc = function timerFunc() {
setTimeout(nextTickHandler, 0);
};
}
/* istanbul ignore next */
if (typeof Promise !== 'undefined' && isNative(Promise)) {
// use microtask in non-DOM environments, e.g. Weex
var p = Promise.resolve();
timerFunc = function timerFunc() {
p.then(nextTickHandler);
};
} else {
// fallback to setTimeout
timerFunc = function timerFunc() {
setTimeout(nextTickHandler, 0);
};
}
return function queueNextTick(cb, ctx) {
var _resolve = void 0;
@ -250,7 +256,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
break;
}
var result = original.apply(this, args);
notify(ob.parent, ob.parentKey, ob.dep);
notify(ob.parent, ob.parentKey, ob.dep, true);
return result;
};
});
@ -301,7 +307,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
if (isIE9Below) {
var VBClassPool = {};
window.execScript([// jshint ignore:line
'Function parseVB(code)', '\tExecuteGlobal(code)', 'End Function' //转换一段文本为VB代码
'Function parseVB(code)', '\tExecuteGlobal(code)', 'End Function' //转换一段文本为VB代码
].join('\n'), 'VBScript');
var VBMediator = function VBMediator(instance, accessors, name, value) {
@ -317,7 +323,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
// jshint ignore:line
var buffer = [];
buffer.push('\tPrivate [$vbsetter]', '\tPublic [$accessors]', '\tPublic Default Function [$vbthis](ac' + timeBucket + ', s' + timeBucket + ')', '\t\tSet [$accessors] = ac' + timeBucket + ': set [$vbsetter] = s' + timeBucket, '\t\tSet [$vbthis] = Me', //链式调用
'\tEnd Function');
'\tEnd Function');
//添加普通属性,因为VBScript对象不能像JS那样随意增删属性,必须在这里预先定义好
var uniq = {
$vbthis: true,
@ -330,19 +336,19 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
uniq[name] = true;
}
}
//添加访问器属性
//添加访问器属性
for (name in accessors) {
if (uniq[name]) {
continue;
}
uniq[name] = true;
buffer.push(
//由于不知对方会传入什么,因此set, let都用上
'\tPublic Property Let [' + name + '](val' + timeBucket + ')', //setter
'\t\tCall [$vbsetter](Me, [$accessors], "' + name + '", val' + timeBucket + ')', '\tEnd Property', '\tPublic Property Set [' + name + '](val' + timeBucket + ')', //setter
'\t\tCall [$vbsetter](Me, [$accessors], "' + name + '", val' + timeBucket + ')', '\tEnd Property', '\tPublic Property Get [' + name + ']', //getter
'\tOn Error Resume Next', //必须优先使用set语句,否则它会误将数组当字符串返回
'\t\tSet[' + name + '] = [$vbsetter](Me, [$accessors],"' + name + '")', '\tIf Err.Number <> 0 Then', '\t\t[' + name + '] = [$vbsetter](Me, [$accessors],"' + name + '")', '\tEnd If', '\tOn Error Goto 0', '\tEnd Property');
//由于不知对方会传入什么,因此set, let都用上
'\tPublic Property Let [' + name + '](val' + timeBucket + ')', //setter
'\t\tCall [$vbsetter](Me, [$accessors], "' + name + '", val' + timeBucket + ')', '\tEnd Property', '\tPublic Property Set [' + name + '](val' + timeBucket + ')', //setter
'\t\tCall [$vbsetter](Me, [$accessors], "' + name + '", val' + timeBucket + ')', '\tEnd Property', '\tPublic Property Get [' + name + ']', //getter
'\tOn Error Resume Next', //必须优先使用set语句,否则它会误将数组当字符串返回
'\t\tSet[' + name + '] = [$vbsetter](Me, [$accessors],"' + name + '")', '\tIf Err.Number <> 0 Then', '\t\t[' + name + '] = [$vbsetter](Me, [$accessors],"' + name + '")', '\tEnd If', '\tOn Error Goto 0', '\tEnd Property');
}
for (name in properties) {
@ -360,7 +366,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
className = makeHashCode('VBClass');
window.parseVB('Class ' + className + body);
window.parseVB(['Function ' + className + 'Factory(acc, vbm)', //创建实例并传入两个关键的参数
'\tDim o', '\tSet o = (New ' + className + ')(acc, vbm)', '\tSet ' + className + 'Factory = o', 'End Function'].join('\r\n'));
'\tDim o', '\tSet o = (New ' + className + ')(acc, vbm)', '\tSet ' + className + 'Factory = o', 'End Function'].join('\r\n'));
VBClassPool[body] = className;
}
var ret = window[className + 'Factory'](accessors, VBMediator); //得到其产品
@ -458,8 +464,8 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
return ob;
}
function notify(observer, key, dep) {
dep.notify({ observer: observer, key: key });
function notify(observer, key, dep, refresh) {
dep.notify({ observer: observer, key: key, refresh: refresh });
if (observer) {
//触发a.*绑定的依赖
_.each(observer._deps, function (dep) {
@ -563,7 +569,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
},
set: function reactiveSetter(newVal) {
var value = childOb ? childOb.model : val;
if (newVal === value || (newVal !== newVal && value !== value)) {
if (newVal === value || newVal !== newVal && value !== value) {
return;
}
val = newVal;
@ -757,7 +763,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
} catch (e) {
// if (this.user) {
// } else {
console.error(e);
// console.error(e)
// }
} finally {
// "touch" every property so they are all tracked as
@ -815,10 +821,10 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
if (this.active) {
var value = this.get();
if (value !== this.value ||
// Deep watchers and watchers on Object/Arrays should fire even
// when the value is the same, because the value may
// have mutated.
_.isArray(value) || this.deep) {
// Deep watchers and watchers on Object/Arrays should fire even
// when the value is the same, because the value may
// have mutated.
options && options.refresh || this.deep) {
// set new value
var oldValue = this.value;
this.value = value;
@ -826,13 +832,13 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
try {
this.cb.call(this.vm, value, oldValue, options);
} catch (e) {
console.log(e);
console.error(e);
}
} else {
try {
this.cb.call(this.vm, value, oldValue, options);
} catch (e) {
console.log(e);
console.error(e);
}
}
}
@ -1063,6 +1069,16 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
return watchers;
}
var mixinInjection = {};
function getMixins(type) {
return mixinInjection[type];
}
function mixin(xtype, cls) {
mixinInjection[xtype] = _.cloneDeep(cls);
}
var computedWatcherOptions = { lazy: true };
function initState(vm, state) {
@ -1167,6 +1183,22 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
}
}
function initMixins(vm, mixins) {
mixins = mixins || [];
_.each(mixins.reverse(), function (mixinType) {
var mixin$$1 = getMixins(mixinType);
for (var key in mixin$$1) {
if (typeof mixin$$1[key] !== "function") continue;
if (_.has(vm, key)) continue;
vm[key] = _.bind(mixin$$1[key], vm.$$model ? vm.model : vm);
}
});
}
function defineProps(vm, keys) {
var props = {};
// if (typeof Proxy === 'function') {
@ -1294,9 +1326,11 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
var watch$$1 = this.watch;
var actions = this.actions;
var keys = _.keys(this.$$model).concat(_.keys(state)).concat(_.keys(computed)).concat(context || []);
var mixins = this.mixins;
defineProps(this, keys);
childContext && defineContext(this, childContext);
this.$$model && (this.model.__ob__ = this.$$model.__ob__);
initMixins(this, mixins);
this._init();
initState(this, state);
initComputed(this, computed);
@ -1358,6 +1392,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
exports.define = define;
exports.version = version;
exports.$$skipArray = $$skipArray;
exports.mixin = mixin;
exports.Model = Model;
exports.observerState = observerState;
exports.Observer = Observer;

BIN
dist/font/iconfont.eot vendored

Binary file not shown.

48
dist/font/iconfont.svg vendored

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 262 KiB

After

Width:  |  Height:  |  Size: 260 KiB

BIN
dist/font/iconfont.ttf vendored

Binary file not shown.

BIN
dist/font/iconfont.woff vendored

Binary file not shown.

BIN
dist/images/2x/background/trans_normal.png vendored

Binary file not shown.

After

Width:  |  Height:  |  Size: 534 B

49
dist/index.html vendored

@ -1,49 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<!--核心css文件-->
<link rel="stylesheet" type="text/css" href="core.css"/>
<!--基础css文件, 包含一些最基本控件的样式-->
<link rel="stylesheet" type="text/css" href="base.css"/>
<!--BI控件样式-->
<link rel="stylesheet" type="text/css" href="widget.css"/>
<!--资源样式, 包括font、icon、background、app-->
<link rel="stylesheet" type="text/css" href="resource.css"/>
<!--当前demo定义的样式-->
<link rel="stylesheet" type="text/css" href="demo.css"/>
<!--IE9及以下兼容-->
<script src="polyfill.js"></script>
<!--核心js-->
<script src="core.js"></script>
<!--BI路由js-->
<script src="router.js"></script>
<!--fix1.0版本框架, 只用ui的话不用引入, fix1.0依赖于router,引入的顺序需在core.js、router.js之后, 可以和2.0版本同时使用或使用任一个均可-->
<script src="fix/fix-1.0.js"></script>
<!--fix2.0版本框架, 只用ui的话不用引入, 引入的顺序需在core.js之后-->
<script src="fix/fix.js"></script>
<!--基础js, 包括最基本的控件-->
<script src="base.js"></script>
<!--基础js, 存放一些通用组件,如选色组件、富文本组件等-->
<script src="case.js"></script>
<!--BI控件js-->
<script src="widget.js"></script>
<!--fix2.0版本框架与fineui结合的代码, 只用ui的话不用引入, 引入的顺序需在fix和控件库(core/base/case/widget)之后之后-->
<script src="fix/fix.compact.js"></script>
<!--工程配置文件,主要是BI.servletURL(根目录)、BI.resourceURL(资源路径)、BI.i18n(国际化)-->
<script src="config.js"></script>
<script src="demo.js"></script>
</head>
<body>
<div id="wrapper"></div>
</body>
</html>

29
dist/polyfill.js vendored

@ -1,4 +1,25 @@
// Production steps of ECMA-262, Edition 5, 15.4.4.14
/**
* Created by richie on 15/7/8.
*/
/**
* 初始化BI对象
*/
var _global;
if (typeof window !== "undefined") {
_global = window;
} else if (typeof global !== "undefined") {
_global = global;
} else if (typeof self !== "undefined") {
_global = self;
} else {
_global = this;
}
if (_global.BI == null) {
_global.BI = {prepares: []};
}
if(_global.BI.prepares == null) {
_global.BI.prepares = [];
}// Production steps of ECMA-262, Edition 5, 15.4.4.14
// Reference: http://es5.github.io/#x15.4.4.14
if (!Array.prototype.indexOf) {
Array.prototype.indexOf = function (searchElement, fromIndex) {
@ -99,7 +120,7 @@ if (!Array.prototype.lastIndexOf) {
* Created by wang on 15/6/23.
*/
// 解决console未定义问题 guy
window.console = window.console || (function () {
_global.console = _global.console || (function () {
var c = {};
c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile
= c.clear = c.exception = c.trace = c.assert = function () {
@ -109,7 +130,7 @@ window.console = window.console || (function () {
/*
* 前端缓存
*/
window.localStorage || (window.localStorage = {
_global.localStorage || (_global.localStorage = {
items: {},
setItem: function (k, v) {
BI.Cache.addCookie(k, v);
@ -216,7 +237,7 @@ if(!Date.now) {
return this;
}
return _sort.call(this);
};
}
}(window);

147
dist/resource.css vendored

@ -18,7 +18,7 @@ body {
-o-user-select: none;
user-select: none;
color: #3d4d66;
font: normal 12px "Microsoft YaHei", "Hiragino Sans GB W3";
font: normal 12px "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Heiti;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-decoration: none;
@ -110,41 +110,89 @@ textarea::-webkit-scrollbar-thumb:hover {
_background: none;
}
.ztree li span.button.chk.checkbox_false_full {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_full_focus {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full_focus {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree li span.button.chk.checkbox_false_full_focus {
.ztree.hack li span.button.chk.checkbox_false_full_focus {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree li span.button.chk.checkbox_false_part {
.ztree.hack li span.button.chk.checkbox_false_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree li span.button.chk.checkbox_false_part_focus {
.ztree.hack li span.button.chk.checkbox_false_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree li span.button.chk.checkbox_true_full {
.ztree.hack li span.button.chk.checkbox_true_full {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree li span.button.chk.checkbox_true_full_focus {
.ztree.hack li span.button.chk.checkbox_true_full_focus {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree li span.button.chk.checkbox_true_part {
.ztree.hack li span.button.chk.checkbox_true_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree li span.button.chk.checkbox_true_part_focus {
.ztree.hack li span.button.chk.checkbox_true_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
@ -305,31 +353,62 @@ textarea::-webkit-scrollbar-thumb:hover {
_background: none;
}
.loading-background {
background: url('images/1x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/loading.gif');
background: url('images/2x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/loading.gif');
background-size: contain;
_background: none;
}
.auto-color-background {
background: url('images/2x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color.png');
background-size: contain;
_background: none;
}
.auto-color-normal-background {
background: url('images/2x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal.png');
background-size: contain;
_background: none;
}
.auto-color-normal-disabled-background {
background: url('images/2x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal_disable.png');
background-size: contain;
_background: none;
}
.trans-color-background {
background: url('images/2x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_normal.png');
background-size: contain;
_background: none;
}
.trans-color-disabled-background {
background: url('images/2x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_disable.png');
background-size: contain;
_background: none;
}
.auto-color-background.hack {
background: url('images/1x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color.png');
_background: none;
}
.auto-color-normal-background {
.auto-color-normal-background.hack {
background: url('images/1x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal.png');
_background: none;
}
.auto-color-normal-disabled-background {
.auto-color-normal-disabled-background.hack {
background: url('images/1x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal_disable.png');
_background: none;
}
.trans-color-background {
.trans-color-background.hack {
background: url('images/1x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_normal.png');
_background: none;
}
.trans-color-disabled-background {
.trans-color-disabled-background.hack {
background: url('images/1x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_disable.png');
_background: none;
@ -904,11 +983,11 @@ textarea::-webkit-scrollbar-thumb:hover {
}
.trigger-triangle-font .b-font:before {
content: "\e64e";
color: #999999;
color: inherit;
}
.trigger-triangle-font.disabled .b-font:before {
content: "\e64e";
color: #999999;
color: inherit;
}
.pull-up-font .b-font {
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe70a;');
@ -1051,69 +1130,69 @@ textarea::-webkit-scrollbar-thumb:hover {
color: inherit;
}
.text-bold-font .b-font {
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe75b;');
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe697;');
}
.text-bold-font .b-font:before {
content: "\e75b";
content: "\e697";
color: inherit;
}
.text-bold-font.disabled .b-font:before {
content: "\e75b";
content: "\e697";
color: inherit;
}
.text-italic-font .b-font {
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe75c;');
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe69d;');
}
.text-italic-font .b-font:before {
content: "\e75c";
content: "\e69d";
color: inherit;
}
.text-italic-font.disabled .b-font:before {
content: "\e75c";
content: "\e69d";
color: inherit;
}
.text-underline-font .b-font {
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe75d;');
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe69c;');
}
.text-underline-font .b-font:before {
content: "\e75d";
content: "\e69c";
color: inherit;
}
.text-underline-font.disabled .b-font:before {
content: "\e75d";
content: "\e69c";
color: inherit;
}
.text-color-font .b-font {
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe75a;');
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe698;');
}
.text-color-font .b-font:before {
content: "\e75a";
content: "\e698";
color: inherit;
}
.text-color-font.disabled .b-font:before {
content: "\e75a";
content: "\e698";
color: inherit;
}
.text-background-font .b-font {
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe758;');
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe699;');
}
.text-background-font .b-font:before {
content: "\e758";
content: "\e699";
color: inherit;
}
.text-background-font.disabled .b-font:before {
content: "\e758";
content: "\e699";
color: inherit;
}
.text-color-underline-font .b-font {
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe75d;');
*zoom: expression( this.runtimeStyle['zoom'] = '1',this.innerHTML = '&#xe69a;');
}
.text-color-underline-font .b-font:before {
content: "\e75d";
content: "\e69a";
color: inherit;
}
.text-color-underline-font.disabled .b-font:before {
content: "\e75d";
content: "\e69a";
color: inherit;
}
.text-align-left-font .b-font {

8
dist/router.js vendored

@ -318,8 +318,8 @@
// Ensure that `History` can be used outside of the browser.
if (typeof window !== "undefined") {
this.location = window.location;
this.history = window.history;
this.location = _global.location;
this.history = _global.history;
}
};
@ -437,7 +437,7 @@
}
// Add a cross-platform `addEventListener` shim for older browsers.
var addEventListener = window.addEventListener || function (eventName, listener) {
var addEventListener = _global.addEventListener || function (eventName, listener) {
return attachEvent("on" + eventName, listener);
};
@ -458,7 +458,7 @@
// but possibly useful for unit testing Routers.
stop: function () {
// Add a cross-platform `removeEventListener` shim for older browsers.
var removeEventListener = window.removeEventListener || function (eventName, listener) {
var removeEventListener = _global.removeEventListener || function (eventName, listener) {
return detachEvent("on" + eventName, listener);
};

22095
dist/utils.js vendored

File diff suppressed because it is too large Load Diff

11
dist/utils.min.js vendored

File diff suppressed because one or more lines are too long

287
dist/widget.css vendored

@ -1,7 +1,3 @@
.bi-date-calendar-popup .navigation-header {
padding-left: 10px;
padding-right: 10px;
}
.bi-date-trigger {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
@ -16,32 +12,6 @@
.bi-dynamic-date-combo .date-font {
font-size: 16px;
}
.bi-excel-table-header-cell {
font-weight: bold;
}
.bi-excel-table > div.bottom-right > div > div > table {
border-right: 1px solid #e8eaed;
}
.bi-theme-dark .bi-excel-table > div.bottom-right > div > div > table {
border-right: 1px solid #3a3c53;
}
.bi-file-manager-nav-button .file-manager-nav-button-text {
max-width: 200px;
}
.bi-file-manager-nav-button .file-manager-nav-button-text.active {
background-color: #f7f8fa;
color: #999999;
}
.bi-file-manager-nav-button .file-manager-nav-button-triangle {
z-index: 1;
}
.bi-theme-dark .bi-file-manager-nav-button .file-manager-nav-button-text.active {
background-color: #191B2B;
color: #999999;
}
.bi-interactive-arrangement .interactive-arrangement-dragtag-line {
z-index: 1000000000;
background-color: #faaa39;
@ -54,44 +24,13 @@
}
.bi-interval-slider {
min-height: 70px;
min-height: 50px;
}
.bi-month-trigger {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
}
.bi-multidate-combo {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
}
.bi-multidate-popup .multidate-popup-label {
color: #3685f2;
font-size: 14px;
}
.bi-multidate-popup .multidate-popup-item:active,
.bi-multidate-popup .multidate-popup-item.active {
background-color: #3685f2;
color: #ffffff;
-webkit-border-radius: 2px 2px 0 0;
-moz-border-radius: 2px 2px 0 0;
border-radius: 2px 2px 0 0;
}
.bi-multidate-popup .multidate-popup-button {
color: #3685f2;
font-size: 14px;
}
.bi-multidate-segment .bi-multidate-editor {
font-size: 14px;
}
.bi-multilayer-select-level-tree .tree-view {
min-width: 100%;
}
@ -105,33 +44,19 @@
.bi-multi-select-combo .multi-select-trigger-icon-button {
font-size: 16px;
}
.bi-multi-select-combo .trigger-up {
display: none;
}
.bi-multi-select-combo .trigger-down {
display: block;
}
.bi-multi-select-combo.combo-show .trigger-up {
display: block;
}
.bi-multi-select-combo.combo-show .trigger-down {
display: none;
.bi-multi-select-combo .bi-combo.bi-combo-popup + .bi-trigger-icon-button .x-icon {
-webkit-transform: rotate(180deg);
-moz-transform: rotate(180deg);
transform: rotate(180deg);
}
.bi-multi-select-insert-combo .multi-select-trigger-icon-button {
font-size: 16px;
}
.bi-multi-select-insert-combo .trigger-up {
display: none;
}
.bi-multi-select-insert-combo .trigger-down {
display: block;
}
.bi-multi-select-insert-combo.combo-show .trigger-up {
display: block;
}
.bi-multi-select-insert-combo.combo-show .trigger-down {
display: none;
.bi-multi-select-insert-combo .bi-combo.bi-combo-popup + .bi-trigger-icon-button .x-icon {
-webkit-transform: rotate(180deg);
-moz-transform: rotate(180deg);
transform: rotate(180deg);
}
@ -150,23 +75,33 @@
-moz-border-radius: 8px;
border-radius: 8px;
}
.bi-multi-select-insert-list .bi-search-editor {
-moz-border-radius-bottomleft: 0px;
-webkit-border-bottom-left-radius: 0px;
-moz-border-radius-bottomright: 0px;
-webkit-border-bottom-right-radius: 0px;
border-bottom-right-radius: 0px;
border-bottom-left-radius: 0px;
}
.bi-multi-select-list .bi-search-editor {
-moz-border-radius-bottomleft: 0px;
-webkit-border-bottom-left-radius: 0px;
-moz-border-radius-bottomright: 0px;
-webkit-border-bottom-right-radius: 0px;
border-bottom-right-radius: 0px;
border-bottom-left-radius: 0px;
}
.bi-multi-tree-check-pane .multi-tree-check-selected {
color: #3685f2;
}
.bi-multi-tree-combo .multi-select-trigger-icon-button {
font-size: 16px;
}
.bi-multi-tree-combo .trigger-up {
display: none;
}
.bi-multi-tree-combo .trigger-down {
display: block;
}
.bi-multi-tree-combo.combo-show .trigger-up {
display: block;
}
.bi-multi-tree-combo.combo-show .trigger-down {
display: none;
.bi-multi-tree-combo .bi-combo.bi-combo-popup + .bi-trigger-icon-button .x-icon {
-webkit-transform: rotate(180deg);
-moz-transform: rotate(180deg);
transform: rotate(180deg);
}
.bi-multi-tree-popup .popup-view-tree {
min-height: 170px;
@ -227,42 +162,6 @@
.bi-number-interval.number-error .bi-input {
color: #ff4949 !important;
}
.bi-page-table-cell {
-webkit-user-select: text;
-khtml-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
-o-user-select: text;
user-select: text;
}
.bi-preview-table-cell {
min-height: 25px;
min-width: 80px;
}
.bi-preview-table-header-cell {
font-weight: bold;
min-height: 25px;
min-width: 80px;
}
.bi-preview-table {
-webkit-user-select: text;
-khtml-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
-o-user-select: text;
user-select: text;
}
.bi-preview-table > div > table > thead > tr.odd,
.bi-preview-table > div > div > div > table > thead > tr.odd {
background-color: #f7f8fa;
}
.bi-theme-dark .bi-preview-table > div > table > thead > tr.odd,
.bi-theme-dark .bi-preview-table > div > div > div > table > thead > tr.odd {
background-color: #191B2B;
}
.bi-quarter-trigger {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
@ -274,101 +173,13 @@
.bi-search-multi-text-value-combo.combo-error .bi-multi-select-searcher .tip-text-style {
color: #ff4949;
}
.bi-search-multi-text-value-combo .trigger-up {
display: none;
}
.bi-search-multi-text-value-combo .trigger-down {
display: block;
}
.bi-search-multi-text-value-combo.combo-show .trigger-up {
display: block;
}
.bi-search-multi-text-value-combo.combo-show .trigger-down {
display: none;
}
.bi-sequence-table-dynamic-number .sequence-table-title-cell {
overflow: hidden;
overflow-x: hidden;
overflow-y: hidden;
-webkit-box-sizing: border-box;
/*Safari3.2+*/
-moz-box-sizing: border-box;
/*Firefox3.5+*/
-ms-box-sizing: border-box;
/*IE8*/
box-sizing: border-box;
/*W3C标准(IE9+,Safari5.1+,Chrome10.0+,Opera10.6+都符合box-sizing的w3c标准语法)*/
}
.bi-sequence-table-dynamic-number .sequence-table-number-cell {
-webkit-box-sizing: border-box;
/*Safari3.2+*/
-moz-box-sizing: border-box;
/*Firefox3.5+*/
-ms-box-sizing: border-box;
/*IE8*/
box-sizing: border-box;
/*W3C标准(IE9+,Safari5.1+,Chrome10.0+,Opera10.6+都符合box-sizing的w3c标准语法)*/
}
.bi-sequence-table-list-number .sequence-table-title-cell {
overflow: hidden;
overflow-x: hidden;
overflow-y: hidden;
-webkit-box-sizing: border-box;
/*Safari3.2+*/
-moz-box-sizing: border-box;
/*Firefox3.5+*/
-ms-box-sizing: border-box;
/*IE8*/
box-sizing: border-box;
/*W3C标准(IE9+,Safari5.1+,Chrome10.0+,Opera10.6+都符合box-sizing的w3c标准语法)*/
}
.bi-sequence-table-list-number .sequence-table-number-cell {
-webkit-box-sizing: border-box;
/*Safari3.2+*/
-moz-box-sizing: border-box;
/*Firefox3.5+*/
-ms-box-sizing: border-box;
/*IE8*/
box-sizing: border-box;
/*W3C标准(IE9+,Safari5.1+,Chrome10.0+,Opera10.6+都符合box-sizing的w3c标准语法)*/
}
.bi-sequence-table-tree-number .sequence-table-title-cell {
overflow: hidden;
overflow-x: hidden;
overflow-y: hidden;
-webkit-box-sizing: border-box;
/*Safari3.2+*/
-moz-box-sizing: border-box;
/*Firefox3.5+*/
-ms-box-sizing: border-box;
/*IE8*/
box-sizing: border-box;
/*W3C标准(IE9+,Safari5.1+,Chrome10.0+,Opera10.6+都符合box-sizing的w3c标准语法)*/
}
.bi-sequence-table-tree-number .sequence-table-number-cell {
-webkit-box-sizing: border-box;
/*Safari3.2+*/
-moz-box-sizing: border-box;
/*Firefox3.5+*/
-ms-box-sizing: border-box;
/*IE8*/
box-sizing: border-box;
/*W3C标准(IE9+,Safari5.1+,Chrome10.0+,Opera10.6+都符合box-sizing的w3c标准语法)*/
}
.bi-single-select-combo .single-select-trigger-icon-button {
font-size: 16px;
}
.bi-single-select-combo .trigger-up {
display: none;
}
.bi-single-select-combo .trigger-down {
display: block;
}
.bi-single-select-combo.combo-show .trigger-up {
display: block;
}
.bi-single-select-combo.combo-show .trigger-down {
display: none;
.bi-single-select-combo .bi-combo.bi-combo-popup + .bi-trigger-icon-button .x-icon {
-webkit-transform: rotate(180deg);
-moz-transform: rotate(180deg);
transform: rotate(180deg);
}
.bi-single-slider-label {
min-height: 50px;
@ -382,7 +193,8 @@
}
.bi-single-slider-button .slider-button {
cursor: ew-resize;
border: 2px solid #3685f2;
border-width: 2px;
border-style: solid;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
border-radius: 8px;
@ -414,8 +226,20 @@
top: 6px;
left: -8px;
}
.bi-theme-dark .bi-single-slider-button .slider-button {
background-color: #242640;
}
.bi-theme-dark .bi-single-slider-button .slider-button:hover,
.bi-theme-dark .bi-single-slider-button .slider-button.hover {
background-color: #191B2B;
}
.bi-theme-dark .bi-single-slider-button .slider-button.disabled:hover,
.bi-theme-dark .bi-single-slider-button .slider-button.disabled.hover {
background-color: #191B2B;
}
.bi-slider-track .gray-track {
background-color: #F2F4F7;
background-color: rgba(61, 77, 102, 0.1);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#1a3d4d66,endColorstr=#1a3d4d66);
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
@ -431,6 +255,19 @@
-moz-border-radius: 3px;
border-radius: 3px;
}
.bi-theme-dark .bi-slider-track .gray-track {
background-color: rgba(214, 224, 220, 0.1);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#1ad6e0dc,endColorstr=#1ad6e0dc);
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}
.bi-theme-dark .bi-slider-track .disabled-blue-track {
background-color: #606479;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}
.bi-date-interval.time-error .bi-input {
color: #ff4949;
}

4174
dist/widget.js vendored

File diff suppressed because it is too large Load Diff

14
docs/.gitignore vendored

@ -1,14 +0,0 @@
.DS_Store
.svn
.sass-cache
.vscode
.tmp
node_modules
bower_components
tmp
dist
archive
archive.zip
*.log
#_book
test

21
docs/LICENSE

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2017 gittz
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

6
docs/OVERVIEW.md

@ -1,6 +0,0 @@
# 通用规范
1. 控件都会提供setValue, getValue, populate这几个方法来设置值,获取值(展示类控件除外)和刷新控件
2. 控件都会提供setEnable, setVisible, setValid这几个方法来设置使能,是否可见,是否有效状态,并且在fineui2.0之后,会自动给子组件设置同样的状态,不要重写这些方法,一些需要在设置状态时的额外操作可以通过重写_setXXX来实现
3. 布局都有lgap、rgap、tgap、bgap、hgap、vgap、scrollable,scrollx,scrolly,items属性
3. 慎用empty
4. 谨慎监听和触发BI.Controller.EVENT_CHANGE事件,一般来说,控件都会有一个BI.ClassName.EVENT_CHANGE事件,一些特殊的事件会在对应控件文档中列出

15
docs/README.md

@ -1,15 +0,0 @@
# FineUI
FineUI文档
#### 文档地址
GithubPages: [https://fanruan.github.io/fineui](https://fanruan.github.io/fineui)
CodingPages: [http://fanruan.coding.me/fineui](http://fanruan.coding.me/fineui)
#### Demo
CodingPages: [http://fanruan.coding.me/fineui/dist/index.html](http://fanruan.coding.me/fineui/dist/index.html)

35
docs/START.md

@ -1,35 +0,0 @@
#### 第一个demo
```html
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" type="text/css" href="https://fanruan.coding.me/fineui/dist/bundle.min.css" />
<script src="https://coding.net/u/fanruan/p/fineui/git/raw/master/dist/bundle.min.js"></script>
</head>
<body>
<script>
$(function(){
BI.createWidget({
type:"bi.absolute",
element: "body",
items: [{
el:{
type: "bi.button",
text: "这是一个按钮"
},
left: 100,
top: 100
}]
})
})
</script>
</body>
</html>
```
#### 源码集成Demo
BI的组件就是集成的fineui进行开发的
[https://coding.net/u/fanruan/p/bi-components/](https://coding.net/u/fanruan/p/bi-components/)

203
docs/SUMMARY.md

@ -1,203 +0,0 @@
# Summary
## 总览
* [概览](README.md)
* [起步](START.md)
## 通用规范
* [通用规范](OVERVIEW.md)
## 核心控件
* 布局
* [vertical](core/layout/vertical.md)
* [horizontal](core/layout/horizontal.md)
* [htape](core/layout/htape.md)
* [vtape](core/layout/vtape.md)
* [center_adapt](core/layout/center_adapt.md)
* [vertical_adapt](core/layout/vertical_adapt.md)
* [left_right_vertical_adapt](core/layout/left_right_vertical_adapt.md)
* [flow](core/layout/flow.md)
* [center](core/layout/center.md)
* [horizontal_adapt](core/layout/horizontal_adapt.md)
* [horizontal_auto](core/layout/horizontal_auto.md)
* [horizontal_float](core/layout/horizontal_float.md)
* [float_center](core/layout/float_center.md)
* [border](core/layout/border.md)
* [grid](core/layout/grid.md)
* [table](core/layout/table.md)
* [td](core/layout/td.md)
* ...
* 抽象控件
* [button_group](core/abstract/button_group.md)
* [button_tree](core/abstract/button_tree.md)
* [virtual_group](core/abstract/virtual_group.md)
* [custom_tree](core/abstract/custom_tree.md)
* [grid_view](core/abstract/grid_view.md)
* [collection_view](core/abstract/collection_view.md)
* [list_view](core/abstract/list_view.md)
* [virtual_list](core/abstract/virtual_list.md)
* 组合控件
* [combo](core/combination/bi.combo.md)
* [expander](core/combination/bi.expander.md)
* [combo_group](core/combination/combo_group.md)
* [loader](core/combination/loader.md)
* [navigation](core/combination/navigation.md)
* [searcher](core/combination/searcher.md)
* [switcher](core/combination/switcher.md)
* [tab](core/combination/tab.md)
* 弹出层
* [float_box](core/layer/layer_float_box.md)
* [popup_view](core/layer/layer_popup.md)
* [searcher_view](core/layer/layer_searcher.md)
* [Widget](core/widget.md)
* [Single](core/single.md)
* [BasicButton](core/basic_button.md)
* [NodeButton](core/node_button.md)
* [Pane](core/pane.md)
## 基础控件
* [label](base/label.md)
* [bubble](base/bubble.md)
* [toast](base/toast.md)
* [message](base/message.md)
* 按钮
* [button](base/button/button.md)
* [text_button](base/button/text_button.md)
* [icon_button](base/button/icon_button.md)
* [image_button](base/button/image_button.md)
* 编辑框
* [editor](base/editor/editor.md)
* [code_editor](base/editor/code_editor.md)
* [multifile_editor](base/editor/multifile_editor.md)
* [textarea_editor](base/editor/textarea_editor.md)
* [formula_editor](base/editor/formula_editor.md)
* [rich_editor](base/editor/rich_editor.md)
* 表格
* [table_view](base/table/table_view.md)
* [grid_table](base/table/grid_table.md)
* [collection_table](base/table/collection_table.md)
* [resizable_table](base/table/resizable_table.md)
* [pager](base/pager.md)
* [svg](base/svg.md)
* [canvas](base/canvas.md)
## 实例控件
* 按钮
* [multi_select_item](case/button/multi_select_item.md)
* [single_select_item](case/button/single_select_item.md)
* [single_select_radio_item](case/button/single_select_radio_item.md)
* 文本框
* [shelter_editor](case/editor/shelter_editor.md)
* [sign_editor](case/editor/sign_editor.md)
* [sign_initial_editor](case/editor/sign_initial_editor.md)
* [state_editor](case/editor/state_editor.md)
* [simple_state_editor](case/editor/simple_state_editor.md)
* [clear_editor](detailed/text_input/bi.clear_editor.md)
* 列表
* [select_list](case/list/list.select.md)
* [lazy_loader](case/loader/lazy_loader.md)
* [list_loader](case/loader/list_loader.md)
* [sort_list(jquery-sortable封装)](case/loader/sort_list.md)
* 面板
* [pane_list](case/layer/pane_list.md)
* [panel](case/layer/panel.md)
* popup弹出层
* [multi_popup_view](case/layer/multi_popup_layer.md)
* [popup_panel](case/layer/layer_panel.md)
* 触发器
* [editor_trigger](case/trigger/editor_trigger.md)
* [icon_trigger](case/trigger/icon_trigger.md)
* [text_trigger](case/trigger/text_trigger.md)
* [select_text_trigger](case/trigger/select_text_trigger.md)
* 下拉框
* [bubble_combo](case/combo/bubble_combo.md)
* [icon_combo](case/combo/icon_combo.md)
* [static_combo](case/combo/static_combo.md)
* [text_value_combo](case/combo/text_value_combo.md)
* [text_value_check_combo](case/combo/text_value_check_combo.md)
* [editor_icon_check_combo](case/combo/editor_icon_check_combo.md)
* [text_value_down_list_combo](case/combo/text_value_down_list_combo.md)
* 树
* [branch_tree](case/tree/branch_tree.md)
* [handstand_branch_tree](case/tree/handstand_branch_tree.md)
* [display_tree](case/tree/display_tree.md)
* [simple_tree](case/tree/simple_tree.md)
* [level_tree](case/tree/level_tree.md)
* [branch_relation](case/tree/branch_relation.md)
* 表格
* [adaptive_table](case/table/adaptive_table.md)
* [tree_table](case/table/tree_table.md)
* [layer_tree_table](case/table/layer_tree_table.md)
* Pager
* [all_count_pager](case/pager/all_count_pager.md)
* [direction_pager](case/pager/direction_pager.md)
* [calendar](case/calendar.md)
* [clipboard](case/clipboard.md)
* [complex_canvas](case/complex_canvas.md)
* [color_chooser](case/color_chooser.md)
* [color_chooser_popup](case/color_chooser_popup.md)
* [segment](case/segment.md)
## 详细控件
* 各种小组件
* [通用按钮](detailed/bi.button/general.md)
* [提示性信息](detailed/bi.button/tooltip.md)
* [各种items](detailed/bi.button/items.md)
* [各种节点nodes](detailed/bi.button/node.md)
* [各种segment](detailed/bi.button/segment.md)
* 文本框控件
* [text_editor](detailed/text_input/bi.text_editor.md)
* [search_editor](detailed/text_input/bi.search_editor.md)
* [number_editor](detailed/text_input/number_editor.md)
* 树
* [single_level_tree](detailed/tree/single_level_tree.md)
* [select_level_tree](detailed/tree/select_level_tree.md)
* [multi_single_level_tree](detailed/tree/multi_single_level_tree.md)
* [multi_select_level_tree](detailed/tree/multi_select_level_tree.md)
* [switch_tree](detailed/tree/bi.switch_tree.md)
* 表格
* [preview_table](detailed/table/bi.preview_table.md)
* [responsive_table](detailed/table/bi.responsive_table.md)
* [sequence_table](detailed/table/bi.sequence_table.md)
* [page_table](detailed/table/bi.page_table.md)
* 下拉列表
* [down_list_combo](detailed/down_list_combo.md)
* 复选下拉框
* [multi_select_combo](detailed/multi_select_combo.md)
* 简单下拉树
* [single_tree_combo](detailed/combo/single_tree_combo.md)
* 多层级下拉树
* [multilayer_single_tree_combo](detailed/combo/multilayer_single_tree_combo.md)
* 可选下拉树
* [select_tree_combo](detailed/combo/select_tree_combo.md)
* 多层级可选下拉树
* [multilayer_select_tree_combo](detailed/combo/multilayer_select_tree_combo.md)
* 复选下拉树
* [multi_tree_combo](detailed/tree/bi.multi_tree_combo.md)
* 日期相关控件
* [year_combo](detailed/year_combo.md)
* [month_combo](detailed/month_combo.md)
* [quarter_combo](detailed/quarter_combo.md)
* [year_month_combo](detailed/date/year_month_combo.md)
* [year_quarter_combo](detailed/date/year_quarter_combo.md)
* [date_pane](detailed/date/date_pane.md)
* [date_combo](detailed/date/date_combo.md)
* [multidate_combo](detailed/date/multidate_combo.md)
* [date_time](detailed/date/date_time.md)
* [time_interval](detailed/date/time_interval.md)
* 数值区间控件
* [number_interval](detailed/number_interval.md)
* 文件管理
* [file_manager](detailed/file_manager.md)
## 部件
* [value_chooser_combo](components/value_chooser_combo.md)
* [value_chooser_pane](components/value_chooser_pane.md)
* [all_value_chooser_combo](components/all_value_chooser_combo.md)
* [tree_value_chooser_combo](components/tree_value_chooser_combo.md)
* [tree_value_chooser_pane](components/tree_value_chooser_pane.md)
## addons
* sliders
* [single_slider](detailed/single_slider.md)

14
docs/_book/.gitignore vendored

@ -1,14 +0,0 @@
.DS_Store
.svn
.sass-cache
.vscode
.tmp
node_modules
bower_components
tmp
dist
archive
archive.zip
*.log
#_book
test

21
docs/_book/LICENSE

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2017 gittz
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

2888
docs/_book/OVERVIEW.html

File diff suppressed because it is too large Load Diff

2913
docs/_book/START.html

File diff suppressed because it is too large Load Diff

2950
docs/_book/base/bubble.html

File diff suppressed because it is too large Load Diff

40
docs/_book/base/bubble.md

@ -1,40 +0,0 @@
# bi.bubble
#### 气泡提示
{% method %}
[source](https://jsfiddle.net/fineui/4u705v2v/)
{% common %}
```javascript
BI.createWidget({
type: 'bi.bubble',
element: "#wrapper",
height: 30,
text: "测试"
})
```
{% endmethod %}
## API
##### 基础属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :----- | :---- |:----
| direction | 气泡显示位置 | string | — | "top" |
| height | 气泡高度 | number | — | 35 |
| text | 气泡显示内容 | string | — | " " |
## 对外方法
| 名称 | 说明 | 回调参数
| :------ |:------------- | :-----
| setText | 设置文本值 | 需要设置的文本值text|
---

3106
docs/_book/base/button/button.html

File diff suppressed because it is too large Load Diff

66
docs/_book/base/button/button.md

@ -1,66 +0,0 @@
# bi.button
## 文字类型的按钮,基类[BI.BasicButton](/core/basicButton.md)
{% method %}
[source](https://jsfiddle.net/fineui/txqwwzLm/)
{% common %}
```javascript
BI.createWidget({
type: 'bi.button',
element: "#wrapper",
text: '一般按钮',
level: 'common',
height: 30
});
```
{% endmethod %}
## API
##### 基础属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :-----| :----|:----
| hgap | 效果相当于文本框左右padding值,如果clear属性为true,该属性值置0 | number | — | 10 |
| vgap | 效果相当于文本框上下padding值 | number | — | 0 |
| lgap | 效果相当于文本框left-padding值 | number | — | 0 |
| rgap | 效果相当于文本框right-padding值 | number | — | 0 |
| tgap |效果相当于文本框top-padding值 | number | — | 0 |
| bgap | 效果相当于文本框bottom-padding值 | number | — | 0 |
| width | 宽度 | number | — | — |
| height | 高度 | number | — | — |
##### 高级属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :-----| :----|:----
| level |按钮类型 | string| common,success,warning,ignore | common |
| minWidth | 最小宽度,如果block/clear中某一项为true,此项值为0,否则为90 | number | — | 90 |
| shadow | 是否显示阴影 | boolean| true,false | props.clear !== true |
| isShadowShowingOnSelected|选中状态下是否显示阴影 | boolean| true,false | true |
| iconClass | 图标类型 | string| — | " "|
| block| 是否块状显示,即不显示边框,没有最小宽度的限制 | boolean| true,false | false |
| clear| 是否去掉边框和背景 |boolean| true,false | false |
| textAlign | 文字布局 | string | left,center,right | cneter |
| whiteSpace | 元素内的空白处理方式 | string | normal,nowrap | nowrap|
| forceCenter | 是否无论如何都要居中, 不考虑超出边界的情况, 在未知宽度和高度时有效 | boolean | true,false | false |
| textWidth| 按钮文本宽度 | number| — | null |
| textHeight | 按钮文本高度 | number| — | null |
## 对外方法
| 名称 | 说明 | 回调参数
| :------ |:------------- | :-----
| doRedMark | 文本标红 | — |
| unRedMark | 取消文本标红| —|
| doHighLight | 文本高亮 | —|
| unHighLight | 取消文本高亮 | —|
| setText| 设置文本值 | 需要设置的文本值text|
| setValue | 设置文本值 | 需要设置的文本值text |
---

2940
docs/_book/base/button/icon_button.html

File diff suppressed because it is too large Load Diff

38
docs/_book/base/button/icon_button.md

@ -1,38 +0,0 @@
# bi.icon_button
## 图标button,基类[BI.BasicButton](/core/basicButton.md)
{% method %}
[source](https://jsfiddle.net/fineui/g52u14ay/)
{% common %}
```javascript
BI.createWidget({
type: 'bi.icon_button',
cls: "close-ha-font",
width: 20,
height: 20
});
```
{% endmethod %}
## API
##### 基础属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :-----| :----|:----
| iconWidth | 图标宽度 | number| — | null |
| iconHeight | 图标高度 | number| — | null |
## 对外方法
| 名称 | 说明 | 回调参数
| :------ |:------------- | :-----
---

2972
docs/_book/base/button/image_button.html

File diff suppressed because it is too large Load Diff

46
docs/_book/base/button/image_button.md

@ -1,46 +0,0 @@
# bi.image_button
## 图片的button,基类[BI.BasicButton](/core/basicButton.md)
{% method %}
[source](https://jsfiddle.net/fineui/yc0g9gLw/)
{% common %}
```javascript
BI.createWidget({
type: 'bi.image_button',
src: "http://www.easyicon.net/api/resizeApi.php?id=1206741&size=128",
width: 100,
height: 100
});
```
{% endmethod %}
## API
##### 基础属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :-----| :----|:----
| src |图片路径 |string | —|" " |
| iconWidth | 图标宽度 | number/string| — | "100%" |
| iconHeight | 图标高度 | number/string | — | "100%"|
## 对外方法
| 名称 | 说明 | 回调参数
| :------ |:------------- | :-----
| setImageWidth | 设置图片宽度| 宽度width |
| setImageHeight| 设置图片高度| 高度height|
| getImageWidth | 获取图片宽度| —|
| getImageHeight | 获取图片高度| —|
| setSrc| 设置图片路径| src |
| getSrc |获取图片路径| — |
---

3024
docs/_book/base/button/text_button.html

File diff suppressed because it is too large Load Diff

53
docs/_book/base/button/text_button.md

@ -1,53 +0,0 @@
# bi.text_button
## 可以点击的一行文字,基类[BI.BasicButton](/core/basicButton.md)
{% method %}
[source](https://jsfiddle.net/fineui/5p99L39q/)
{% common %}
```javascript
BI.createWidget({
type: 'bi.text_button',
text: '文字按钮',
height: 30
});
```
{% endmethod %}
## API
##### 基础属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :-----| :----|:----
| hgap | 效果相当于文本框左右padding值,如果clear属性为true,该属性值置0 | number | — | 10 |
| lgap | 效果相当于文本框left-padding值 | number | — | 0 |
| rgap | 效果相当于文本框right-padding值 | number | — | 0 |
| textWidth| 按钮文本宽度 | number| — | null |
| textHeight | 按钮文本高度 | number| — | null |
##### 高级属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :-----| :----|:----
| py | 拼音 | string| | " " |
| textAlign | 文字布局 | string | left,center,right | cneter |
| whiteSpace | 元素内的空白处理方式 | string | normal,nowrap | nowrap|
| forceCenter | 是否无论如何都要居中, 不考虑超出边界的情况, 在未知宽度和高度时有效 | boolean | true,false | false |
## 对外方法
| 名称 | 说明 | 回调参数
| :------ |:------------- | :-----
| doRedMark | 文本标红 | — |
| unRedMark | 取消文本标红| —|
| doHighLight | 文本高亮 | —|
| unHighLight | 取消文本高亮 | —|
| setStyle | 设置文本样式 |需要设置的文本标签样式,例{"color":"#000"} |
---

2949
docs/_book/base/canvas.html

File diff suppressed because it is too large Load Diff

40
docs/_book/base/canvas.md

@ -1,40 +0,0 @@
# bi.canvas
## canvas绘图,基类[BI.Widget](/core/widget.md)
{% method %}
[source](https://jsfiddle.net/fineui/gcgd1va0/)
{% common %}
```javascript
var canvas = BI.createWidget({
type: "bi.canvas",
element: "#wrapper",
width: 500,
height: 600
});
canvas.circle(150, 50, 20, "green");
canvas.stroke();
```
{% endmethod %}
## 对外方法
| 名称 | 说明 | 回调参数
| :------ |:------------- | :-----
| line | 绘制线段| (x0, y0, x1, y1) |
| rect | 绘制矩形 | (x,y,w,h,color)分别表示左上角的横坐标、纵坐标,矩形宽、高、以及绘制的颜色|
| circle | 绘制圆形 | (x, y, radius, color)分别表示原点的横坐标,纵坐标,半径以及颜色 |
| hollow | 填充中空的路径 | — |
| solid | 填充实心的路径 | — |
| gradient | 绘制渐变色 | (x0, y0, x1, y1, start, end) |
| reset | 重置画布 | —|
| stroke | 绘制 | callback |
---

3003
docs/_book/base/editor/code_editor.html

File diff suppressed because it is too large Load Diff

53
docs/_book/base/editor/code_editor.md

@ -1,53 +0,0 @@
# bi.code_editor
## 代码文本框,基类[BI.Single](/core/single.md)
{% method %}
[source](https://jsfiddle.net/fineui/fx86hLgm/)
{% common %}
```javascript
BI.createWidget({
type: "bi.code_editor",
cls: "mvc-border",
width: 600,
height: 400
});
```
{% endmethod %}
## API
##### 基础属性
| 参数 | 说明 | 类型 | 可选值 | 默认值
| :------ |:------------- | :-----| :----|:----
| watermark | 文本框placeholder | string | — | " " |
| readOnly | 是否只读 | boolean | true,false | false|
| lineHeight | 行高 | number|— | 2|
| value | 文本框值| string| —| " "|
| paramFormatter| 参数显示值构造函数 | function| — | value |
## 对外方法
| 名称 | 说明 | 回调参数
| :------ |:------------- | :-----
| insertParam | 插入参数 | param |
| insertString | 插入字符串 | str|
| getValue | 获取文本框值|—|
| setValue | 设置文本框值|value|
| focus | 文本框获取焦点| — |
| blur | 文本框失焦|—|
| setStyle | 设置文本样式 |需要设置的文本标签样式style,例{"color":"#000"} |
| getStyle | 获取文本样式 |— |
| refresh | 刷新文本框,codeMirror需要用到 | —|
---

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save