zoomla
Version:
16年专业研发|中文alexa排名第一的CMS品牌-基于dotNET core、功能强大,集成站群、微信开发、小程序与ERP及OA办公系统,支持国际语言和多民族语言,世界五百强与大型门户专用高端网站内核CMS系统
2,708 lines • 94.5 kB
JavaScript
/*!
* ====================================================
* Flex UI - v1.0.0 - 2014-10-31
* https://github.com/fex-team/fui
* GitHub: https://github.com/fex-team/fui.git
* Copyright (c) 2014 Baidu Kity Group; Licensed MIT
* ====================================================
*/
!
function() {
function use(a) {
_p.r([moduleMapping[a]])
}
var _p = {
r: function(a) {
if (_p[a].inited) return _p[a].value;
if ("function" != typeof _p[a].value) return _p[a].inited = !0, _p[a].value;
var b = {
exports: {}
},
c = _p[a].value(null, b.exports, b);
if (_p[a].inited = !0, _p[a].value = c, void 0 !== c) return c;
for (var d in b.exports) if (b.exports.hasOwnProperty(d)) return _p[a].inited = !0, _p[a].value = b.exports, b.exports
}
};
_p[0] = {
value: function() {
function a(a) {
var b = d[a.clazz];
return b ? new b(a) : null
}
var b = {},
c = _p.r(4),
d = _p.r(11);
return c.extend(b, {
parse: function(b) {
var d = [];
return c.isArray(b) ? (c.each(b, function(b, c) {
d.push(a(c))
}), d) : a(b)
}
}), b
}
}, _p[1] = {
value: function() {
var a = _p.r(11);
a.___register({
ALLOW_FOCUS: !0
}), a.___register({
Widget: _p.r(60),
Icon: _p.r(42),
Label: _p.r(48),
Button: _p.r(37),
ToggleButton: _p.r(59),
Buttonset: _p.r(36),
Separator: _p.r(56),
Item: _p.r(46),
Input: _p.r(45),
InputButton: _p.r(43),
Mask: _p.r(49),
ColorPicker: _p.r(38),
Tabs: _p.r(58),
SpinButton: _p.r(57),
Container: _p.r(39),
Panel: _p.r(51),
PPanel: _p.r(54),
LabelPanel: _p.r(47),
Menu: _p.r(50),
InputMenu: _p.r(44),
ButtonMenu: _p.r(34),
DropPanel: _p.r(41),
Popup: _p.r(53),
PopupMenu: _p.r(52),
SelectMenu: _p.r(55),
Dialog: _p.r(40),
Utils: _p.r(13),
Creator: _p.r(0)
}), a.__export()
}
}, _p[2] = {
value: function() {
var a = _p.r(11);
a.___register({
TablePicker: _p.r(17)
})
}
}, _p[3] = {
value: function() {
return jhtmls
}
}, _p[4] = {
value: function() {
return window.jQuery
}
}, _p[5] = {
value: function(require, exports) {
function Class() {}
function checkBaseConstructorCall(a, b) {
var c = a.toString();
if (!/this\.callBase/.test(c)) throw new Error(b + " : \u7c7b\u6784\u9020\u51fd\u6570\u6ca1\u6709\u8c03\u7528\u7236\u7c7b\u7684\u6784\u9020\u51fd\u6570\uff01\u4e3a\u4e86\u5b89\u5168\uff0c\u8bf7\u8c03\u7528\u7236\u7c7b\u7684\u6784\u9020\u51fd\u6570")
}
function inherit(constructor, BaseClass, classname) {
var KityClass = eval("(function " + classname + "( __inherit__flag ) {if( __inherit__flag != KITY_INHERIT_FLAG ) {KityClass.__KityConstructor.apply(this, arguments);}this.__KityClassName = KityClass.__KityClassName;})||0");
KityClass.__KityConstructor = constructor, KityClass.prototype = new BaseClass(KITY_INHERIT_FLAG);
for (var methodName in BaseClass.prototype) BaseClass.prototype.hasOwnProperty(methodName) && 0 !== methodName.indexOf("__Kity") && (KityClass.prototype[methodName] = BaseClass.prototype[methodName]);
return KityClass.prototype.constructor = KityClass, KityClass
}
function mixin(a, b) {
if (!1 == b instanceof Array) return a;
var c, d, e, f = b.length;
for (a.__KityMixins = {
constructor: []
}, c = 0; f > c; c++) {
d = b[c].prototype;
for (e in d)!1 !== d.hasOwnProperty(e) && 0 !== e.indexOf("__Kity") && ("constructor" === e ? a.__KityMixins.constructor.push(d[e]) : a.prototype[e] = a.__KityMixins[e] = d[e])
}
return a
}
function extend(a, b) {
b.__KityClassName && (b = b.prototype);
for (var c in b) if (b.hasOwnProperty(c) && c.indexOf("__Kity") && "constructor" != c) {
var d = a.prototype[c] = b[c];
d.__KityMethodClass = a, d.__KityMethodName = c
}
return a
}
Function.prototype.bind = Function.prototype.bind ||
function(a) {
var b = Array.prototype.slice.call(arguments, 1);
return this.apply(a, b)
}, Class.__KityClassName = "Class", Class.prototype.base = function(a) {
var b = arguments.callee.caller,
c = b.__KityMethodClass.__KityBaseClass.prototype[a];
return c.apply(this, Array.prototype.slice.call(arguments, 1))
}, Class.prototype.callBase = function() {
var a = arguments.callee.caller,
b = a.__KityMethodClass.__KityBaseClass.prototype[a.__KityMethodName];
return b.apply(this, arguments)
}, Class.prototype.mixin = function(a) {
var b = arguments.callee.caller,
c = b.__KityMethodClass.__KityMixins;
if (!c) return this;
var d = c[a];
return d.apply(this, Array.prototype.slice.call(arguments, 1))
}, Class.prototype.callMixin = function() {
var a = arguments.callee.caller,
b = a.__KityMethodName,
c = a.__KityMethodClass.__KityMixins;
if (!c) return this;
var d = c[b];
if ("constructor" == b) {
for (var e = 0, f = d.length; f > e; e++) d[e].call(this);
return this
}
return d.apply(this, arguments)
}, Class.prototype.pipe = function(a) {
return "function" == typeof a && a.call(this, this), this
}, Class.prototype.getType = function() {
return this.__KityClassName
}, Class.prototype.getClass = function() {
return this.constructor
};
var KITY_INHERIT_FLAG = "__KITY_INHERIT_FLAG_" + +new Date;
Class.prototype._accessProperty = function() {
return this._propertyRawData || (this._propertyRawData = {})
}, exports.createClass = function(a, b) {
var c, d, e;
return 1 === arguments.length && (b = arguments[0], a = "AnonymousClass"), e = b.base || Class, b.hasOwnProperty("constructor") ? (c = b.constructor, e != Class && checkBaseConstructorCall(c, a)) : c = function() {
this.callBase.apply(this, arguments), this.callMixin.apply(this, arguments)
}, d = inherit(c, e, a), d = mixin(d, b.mixins), d.__KityClassName = c.__KityClassName = a, d.__KityBaseClass = c.__KityBaseClass = e, d.__KityMethodName = c.__KityMethodName = "constructor", d.__KityMethodClass = c.__KityMethodClass = d, delete b.mixins, delete b.constructor, delete b.base, d = extend(d, b)
}, exports.extendClass = extend
}
}, _p[6] = {
value: function() {
var a = _p.r(4),
b = "__fui__marker__" + +new Date;
return {
isElement: function(a) {
return 1 === a.nodeType
},
getMarker: function() {
return b
},
getRect: function(b) {
var c = b.getBoundingClientRect();
return {
width: c.width || a(b).width(),
height: c.height || a(b).height(),
top: c.top,
bottom: c.bottom,
left: c.left,
right: c.right
}
},
getBound: function(b) {
var c = 0,
d = 0;
return "body" === b.tagName.toLowerCase() ? (d = a(this.getView(b)), c = d.width(), d = d.height(), {
top: 0,
left: 0,
bottom: d,
right: c,
width: c,
height: d
}) : this.getRect(b)
},
getView: function(a) {
return a.ownerDocument.defaultView || a.ownerDocument.parentWindow
}
}
}
}, _p[7] = {
value: function() {
var a = _p.r(3),
b = _p.r(4),
c = {
forEach: function(a, c) {
b.each(a, function(a, b) {
c.call(null, a, b)
})
}
};
return {
compile: function(d, e) {
return d = b.trim(d), 0 === d.length ? "" : a.render(d, e, c)
}
}
}
}, _p[8] = {
value: function() {
function a(a) {
this.__options = b.extend({}, d, a), this.__started = !1, this.__point = {
x: 0,
y: 0
}, this.__location = {
x: 0,
y: 0
}, this.__range = {
top: 0,
left: 0,
bottom: 0,
right: 0
}
}
var b = _p.r(4),
c = _p.r(6),
d = {
handler: null,
target: null,
axis: "all",
range: null
};
return b.extend(a.prototype, {
bind: function(a) {
if (a && (this.__options.target = a), !this.__options.target) throw new Error("target unset");
this.__target = this.__options.target, this.__handler = this.__options.handler, this.__rangeNode = this.__options.range, this.__initOptions(), this.__initEnv(), this.__initEvent()
},
__initEvent: function() {
var a = this.__handler,
d = this;
b(a).on("mousedown", function(b) {
if (1 === b.which) {
var e = c.getRect(a);
b.preventDefault(), d.__started = !0, d.__point = {
x: b.clientX,
y: b.clientY
}, d.__location = {
x: e.left,
y: e.top
}, d.__range = d.__getRange()
}
}), b(a.ownerDocument).on("mousemove", function(a) {
if (d.__started) {
var b = a.clientX,
c = a.clientY;
d.__allowAxisX && d.__xMove(b), d.__allowAxisY && d.__yMove(c)
}
}).on("mouseup", function() {
d.__started = !1
})
},
__xMove: function(a) {
var b = a - this.__point.x;
b = this.__location.x + b, b < this.__range.left ? b = this.__range.left : b > this.__range.right && (b = this.__range.right), this.__target.style.left = b + "px"
},
__yMove: function(a) {
var b = a - this.__point.y;
b = this.__location.y + b, b < this.__range.top ? b = this.__range.top : b > this.__range.bottom && (b = this.__range.bottom), this.__target.style.top = b + "px"
},
__initEnv: function() {
var a = b(this.__handler);
a.css("cursor", "move")
},
__initOptions: function() {
this.__handler || (this.__handler = this.__target), this.__rangeNode || (this.__rangeNode = this.__options.target.ownerDocument.body), this.__allowAxisX = "y" !== this.__options.axis, this.__allowAxisY = "x" !== this.__options.axis
},
__getRange: function() {
var a = this.__rangeNode,
d = c.getRect(this.__target);
return "body" === a.tagName.toLowerCase() ? (a = b(this.__rangeNode.ownerDocument), a = {
top: 0,
left: 0,
bottom: a.height(),
right: a.width()
}) : a = c.getRect(a), {
top: a.top,
left: a.left,
bottom: a.bottom - d.height,
right: a.right - d.width
}
}
}), function(b) {
return new a(b)
}
}
}, _p[9] = {
value: function() {
function a(d) {
var e = !1,
f = !1,
g = null;
return 1 === arguments.length ? b(d) : (c.each([].slice.call(arguments, 1), function(b, h) {
for (var i in h) g = h[i], h.hasOwnProperty(i) && (e = c.isPlainObject(g), f = c.isArray(g), e || f ? e ? (c.isPlainObject(d[i]) || (d[i] = {}), d[i] = a(d[i], g)) : f && (d[i] = a(g)) : d[i] = h[i])
}), d)
}
function b(d) {
var e = null;
return c.isPlainObject(d) ? a({}, d) : c.isArray(d) ? (e = [], c.each(d, function(a, d) {
e.push(c.isPlainObject(d) || c.isArray(d) ? b(d) : d)
}), e) : d
}
var c = _p.r(4);
return a
}
}, _p[10] = {
value: function() {
return {
isContainer: function(a) {
return "container" === a.__widgetType
}
}
}
}, _p[11] = {
value: function() {
var a = {};
return {
widgets: a,
__export: function() {
window.FUI = this
},
___register: function(a, b) {
if ("string" == typeof a) this[a] = b;
else {
b = a;
for (var c in b) b.hasOwnProperty(c) && (this[c] = b[c])
}
},
__registerInstance: function(b) {
a[b.getId()] = b
}
}
}
}, _p[12] = {
value: function() {
var a = _p.r(11);
return {
classPrefix: "fui-",
layout: {
TOP: "top",
LEFT: "left",
BOTTOM: "bottom",
RIGHT: "right",
CENTER: "center",
MIDDLE: "middle",
LEFT_TOP: "left-top",
RIGHT_TOP: "right-top",
LEFT_BOTTOM: "left-bottom",
RIGHT_BOTTOM: "right-bottom"
},
allowFocus: !! a.ALLOW_FOCUS,
control: {
input: 1,
textarea: 1,
button: 1,
select: 1,
option: 1,
object: 1,
embed: 1
}
}
}
}, _p[13] = {
value: function() {
var a = _p.r(4),
b = {
Tpl: _p.r(7),
Widget: _p.r(10),
createDraggable: _p.r(8)
};
return a.extend(b, _p.r(6), _p.r(5))
}
}, _p[14] = {
value: function() {
return '<div unselectable="on" class="fui-t-picker"></div>\n'
}
}, _p[15] = {
value: function() {
return '<div unselectable="on" class="fui-table-picker"></div>\n'
}
}, _p[16] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(14);
return _p.r(13).createClass("TPicker", {
base: _p.r(60),
constructor: function(b) {
var c = {
row: 10,
col: 10
};
b = a.extend({}, c, b), this.callBase(b)
},
__initOptions: function() {
this.callBase(), this.widgetName = "TPicker", this.__tpl = c, this.__backplane = null
},
__render: function() {
this.callBase(), this.__backplane = this.__createBackplane(), this.__element.appendChild(this.__backplane)
},
__initEvent: function() {
var b = this,
c = {};
this.callBase(), a(this.__backplane).delegate("td", "mousemove", function(a) {
c = a.target.getAttribute("data-index").split(","), c = {
row: parseInt(c[0], 10),
col: parseInt(c[1], 10)
}, b.__update(c.row, c.col)
}), a(this.__backplane).on("click", function() {
b.__select(c.row, c.col)
})
},
__select: function(a, b) {
this.trigger("pickerselect", {
row: a + 1,
col: b + 1
})
},
__update: function(a, c) {
for (var d = null, e = this.__options.row, f = this.__options.col, g = b.classPrefix + "table-picker-hoverin", h = 0; e > h; h++) {
d = this.__backplane.rows[h];
for (var i = 0; f > i; i++) d.cells[i].className = a >= h && c >= i ? g : ""
}
this.trigger("pickerhover", {
row: a,
col: c
})
},
__createBackplane: function() {
for (var c = [], d = null, e = 0, f = this.__options.row; f > e; e++) {
d = [];
for (var g = 0, h = this.__options.col; h > g; g++) d.push('<td data-index="' + e + "," + g + '"></td>');
c.push("<tr>" + d.join("") + "</tr>")
}
return c = a("<table><tbody>" + c.join("") + "</tbody></table>"), c.addClass(b.classPrefix + "t-picker-table"), c[0]
}
})
}
}, _p[17] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(15),
d = _p.r(48),
e = _p.r(16),
f = _p.r(37),
g = _p.r(54),
h = _p.r(49);
return _p.r(13).createClass("TablePicker", {
base: _p.r(60),
constructor: function(b) {
var c = {
button: null,
row: 10,
col: 10
};
b = a.extend({}, c, b), this.callBase(b)
},
open: function() {
this.__panelWidget.show(), this.__maskWidget.show()
},
close: function() {
this.__panelWidget.hide(), this.__maskWidget.hide()
},
appendTo: function(a) {
a.appendChild(this.__buttonWidget.getElement())
},
getButton: function() {
return this.__buttonWidget
},
__initOptions: function() {
this.callBase(), this.widgetName = "TablePicker", this.__tpl = c, this.__pickerWidget = null, this.__labelWidget = null, this.__buttonWidget = null, this.__panelWidget = null, this.__maskWidget = null
},
__render: function() {
this.callBase(), this.__pickerWidget = new e(this.__options), this.__labelWidget = new d({
text: "\u63d2\u5165\u8868\u683c"
}), this.__buttonWidget = new f(this.__options.button), this.__panelWidget = new g({
className: b.classPrefix + "table-picker-panel",
column: !0,
resize: "none"
}), this.__maskWidget = new h, this.__panelWidget.appendWidget(this.__labelWidget), this.__panelWidget.appendWidget(this.__pickerWidget), this.__panelWidget.positionTo(this.__buttonWidget)
},
__initEvent: function() {
var a = this;
this.callBase(), this.__buttonWidget.on("btnclick", function() {
a.open()
}), this.__maskWidget.on("maskclick", function() {
a.close()
}), this.__pickerWidget.on("pickerhover", function(b, c) {
var d = c.row + 1,
e = c.col + 1;
a.__labelWidget.setText(d + "x" + e + " \u8868\u683c")
}).on("pickerselect", function(b, c) {
var d = c.row,
e = c.col;
a.close(), a.trigger("pickerselect", {
row: d,
col: e
})
})
},
__createBackplane: function() {
for (var c = [], d = null, e = 0, f = this.__options.row; f > e; e++) {
d = [];
for (var g = 0, h = this.__options.col; h > g; g++) d.push('<td data-index="' + e + "," + g + '"></td>');
c.push("<tr>" + d.join("") + "</tr>")
}
return c = a("<table><tbody>" + c.join("") + "</tbody></table>"), c.addClass(b.classPrefix + "t-picker-table"), c[0]
}
})
}
}, _p[18] = {
value: function() {
return '<div unselectable="on" class="fui-button-menu"></div>\n'
}
}, _p[19] = {
value: function() {
return '<div unselectable="on" class="fui-button"></div>\n'
}
}, _p[20] = {
value: function() {
return '<div unselectable="on" class="fui-colorpicker-container">\n<div unselectable="on" class="fui-colorpicker-toolbar">\n<div unselectable="on" class="fui-colorpicker-preview"></div>\n<div unselectable="on" class="fui-colorpicker-clear">$clearText</div>\n</div>\n<div unselectable="on" class="fui-colorpicker-title">$commonText</div>\n<div unselectable="on" class="fui-colorpicker-commoncolor">\nhelper.forEach( commonColor, function ( index, colors ) {\n<div unselectable="on" class="fui-colorpicker-colors fui-colorpicker-colors-line$index">\nhelper.forEach( colors, function( i, color ) {\n<span unselectable="on" class="fui-colorpicker-item" style="background-color: $color; border-color: #{color.toLowerCase() == \'#ffffff\' ? \'#eeeeee\': color};" data-color="$color"></span>\n});\n</div>\n} );\n</div>\n<div unselectable="on" class="fui-colorpicker-title">$standardText</div>\n<div unselectable="on" class="fui-colorpicker-standardcolor fui-colorpicker-colors">\nhelper.forEach( standardColor, function ( i, color ) {\n<span unselectable="on" class="fui-colorpicker-item" style="background-color: $color; border-color: $color;" data-color="$color"></span>\n} );\n</div>\n</div>\n'
}
}, _p[21] = {
value: function() {
return '<div unselectable="on" class="fui-dialog-wrap">\n<div unselectable="on" class="fui-dialog-head">\n<h1 unselectable="on" class="fui-dialog-caption">$caption</h1>\n</div>\n<div unselectable="on" class="fui-dialog-body"></div>\n<div unselectable="on" class="fui-dialog-foot"></div>\n</div>\n'
}
}, _p[22] = {
value: function() {
return "<div unselectable=\"on\" class=\"fui-drop-panel\" #{ text ? 'title=\"' + m.text + '\"' : '' }></div>\n"
}
}, _p[23] = {
value: function() {
return '<div unselectable="on" class="fui-icon" >\nif ( this.img ) {\n<img unselectable="on" src="#{this.img}" >\n}\n</div>\n'
}
}, _p[24] = {
value: function() {
return '<div unselectable="on" class="fui-input-button"></div>\n'
}
}, _p[25] = {
value: function() {
return '<div unselectable="on" class="fui-input-menu"></div>\n'
}
}, _p[26] = {
value: function() {
return '<input unselectable="on" class="fui-input" autocomplete="off" !#{ value ? \'value="\' + value + \'"\' : \'\'}>\n'
}
}, _p[27] = {
value: function() {
return "<div unselectable=\"on\" class=\"fui-item!#{ selected ? ' fui-item-selected': '' }\" ></div>\n"
}
}, _p[28] = {
value: function() {
return '<div unselectable="on" class="fui-label">$text</div>\n'
}
}, _p[29] = {
value: function() {
return '<div unselectable="on" class="fui-mask" style="background: $bgcolor; opacity: $opacity;-moz-opacity:$opacity;-khtml-opacity: $opacity;filter:alpha(opacity=#{opacity*100});"></div>\n'
}
}, _p[30] = {
value: function() {
return '<div unselectable="on" class="fui-panel"></div>\n'
}
}, _p[31] = {
value: function() {
return '<div unselectable="on" class="fui-separator"></div>\n'
}
}, _p[32] = {
value: function() {
return '<div unselectable="on" class="fui-spin-button"></div>\n'
}
}, _p[33] = {
value: function() {
return '<div unselectable="on" class="fui-tabs">\n<div unselectable="on" class="fui-tabs-button-wrap"></div>\n<div unselectable="on" class="fui-tabs-panel-wrap"></div>\n</div>\n'
}
}, _p[34] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(18),
d = _p.r(37),
e = _p.r(50),
f = _p.r(49),
g = b.layout;
return _p.r(13).createClass("ButtonMenu", {
base: _p.r(60),
constructor: function(b) {
var c = {
menu: null,
mask: null,
buttons: [],
selected: -1,
layout: g.RIGHT
};
b = a.extend({}, c, b), this.callBase(b)
},
open: function() {
this.__openState = !0, this.__maskWidget.show(), this.__menuWidget.show(), this.addClass(b.classPrefix + "button-active")
},
close: function() {
this.__openState = !1, this.__maskWidget.hide(), this.__menuWidget.hide(), this.removeClass(b.classPrefix + "button-active")
},
isOpen: function() {
return !!this.__openState
},
getSelected: function() {
return this.__menuWidget.getSelected()
},
getSelectedItem: function() {
return this.__menuWidget.getSelectedItem()
},
getValue: function() {
return this.getSelectedItem().getValue()
},
__render: function() {
this.callBase(), this.__initButtons(), this.__menuWidget = new e(this.__options.menu), this.__maskWidget = new f(this.__options.mask), this.__menuWidget.positionTo(this.__element), this.__menuWidget.appendTo(this.__element.ownerDocument.body)
},
__initOptions: function() {
this.callBase(), this.widgetName = "ButtonMenu", this.__tpl = c, this.__buttonWidgets = null, this.__menuWidget = null, this.__maskWidget = null, this.__openState = !1, -1 !== this.__options.selected && (this.__options.menu.selected = this.__options.selected)
},
__initButtons: function() {
var c = [],
e = this.__element,
f = null,
h = this.__options.buttons.length - 1;
this.__options.layout === g.TOP || this.__options.layout === g.LEFT ? (f = new d(this.__options.buttons[h]), f.appendTo(e)) : h = -1, a.each(this.__options.buttons, function(a, b) {
if (h !== a) {
var g = new d(b);
g.appendTo(e), c.push(g)
} else c.push(f)
}), this.addClass(b.classPrefix + "layout-" + this.__options.layout), c[c.length - 1].addClass(b.classPrefix + "open-btn"), this.__buttonWidgets = c
},
__initEvent: function() {
var b = this.__buttonWidgets[this.__buttonWidgets.length - 1],
c = this;
this.callBase(), b.on("click", function() {
c.open()
}), this.__maskWidget.on("maskclick", function() {
c.close()
}), this.__menuWidget.on("select", function(a, b) {
a.stopPropagation(), c.close(), c.trigger("select", b)
}).on("change", function(a, b) {
c.trigger("change", b)
}), this.on("btnclick", function(b) {
b.stopPropagation();
var c = a.inArray(b.widget, this.__buttonWidgets);
c > -1 && c < this.__buttonWidgets.length - 1 && this.trigger("buttonclick", {
button: this.__buttonWidgets[c]
})
})
}
})
}
}, _p[35] = {
value: function() {
var a = _p.r(4),
b = _p.r(25),
c = _p.r(43),
d = _p.r(50),
e = _p.r(49),
f = _p.r(13);
return _p.r(13).createClass("InputMenu", {
base: _p.r(60),
constructor: function(a) {
var c = f.getMarker();
this.callBase(c);
var d = {
input: null,
menu: null,
mask: null
};
this.__extendOptions(d, a), this.widgetName = "InputMenu", this.__tpl = b, this.__lastTime = 0, this.__lastSelect = null, this.__inputWidget = null, this.__menuWidget = null, this.__maskWidget = null, this.__menuState = !1, a !== c && this.__render()
},
select: function(a) {
this.__menuWidget.select(a)
},
setValue: function(a) {
return this.__inputWidget.setValue(a), this
},
getValue: function() {
return this.__inputWidget.getValue()
},
__render: function() {
return this.__rendered ? this : (this.__inputWidget = new c(this.__options.input), this.__menuWidget = new d(this.__options.menu), this.__maskWidget = new e(this.__options.mask), this.callBase(), this.__inputWidget.appendTo(this.__element), this.__menuWidget.positionTo(this.__inputWidget), void this.__initInputMenuEvent())
},
open: function() {
this.__maskWidget.show(), this.__menuWidget.show()
},
close: function() {
this.__maskWidget.hide(), this.__menuWidget.hide()
},
__initInputMenuEvent: function() {
var a = this;
this.on("buttonclick", function() {
this.__menuState || (this.__appendMenu(), this.__menuState = !0), this.__inputWidget.unfocus(), this.open()
}), this.on("keypress", function() {
this.__lastTime = new Date
}), this.on("keyup", function(a) {
8 !== a.keyCode && 13 !== a.keyCode && new Date - this.__lastTime < 500 && this.__update()
}), this.on("inputcomplete", function() {
this.__inputWidget.selectRange(99999999), this.__inputComplete()
}), this.__menuWidget.on("select", function(b, c) {
b.stopPropagation(), a.setValue(c.value), a.trigger("select", c), a.close()
}), this.__menuWidget.on("change", function(b, c) {
b.stopPropagation(), a.trigger("change", c)
}), this.__inputWidget.on("select change", function(a) {
a.stopPropagation()
}), this.__maskWidget.on("maskclick", function() {
a.close()
}), this.on("select", function(a, b) {
this.__lastSelect = b
})
},
__update: function() {
var b = this.getValue(),
c = b.toLowerCase(),
d = this.__getItemValues(),
e = null;
b && (a.each(d, function(a, b) {
return 0 === b.toLowerCase().indexOf(c) ? (e = b, !1) : void 0
}), e && (this.__inputWidget.setValue(e), this.__inputWidget.selectRange(b.length)))
},
__getItemValues: function() {
var b = [];
return a.each(this.__menuWidget.getWidgets(), function(a, c) {
b.push(c.getValue())
}), b
},
__inputComplete: function() {
var b = this.__getItemValues(),
c = -1,
d = this.getValue(),
e = this.__lastSelect;
a.each(b, function(a, b) {
return b === d ? (c = a, !1) : void 0
}), this.trigger("select", {
index: c,
value: d
}), e && e.value === d || this.trigger("change", {
from: e || {
index: -1,
value: null
},
to: {
index: c,
value: d
}
})
},
__appendMenu: function() {
this.__menuWidget.appendTo(this.__inputWidget.getElement().ownerDocument.body)
}
})
}
}, _p[36] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(59);
return _p.r(13).createClass("Buttonset", {
base: _p.r(51),
constructor: function(b) {
var c = {
selected: -1
};
b = a.extend({}, c, b), this.callBase(b)
},
getButtons: function() {
return this.getWidgets()
},
getButton: function(a) {
return this.getWidgets()[a] || null
},
getValue: function() {
return this.__currentIndex > -1 ? this.__widgets[this.__currentIndex].getValue() : null
},
getSelectedIndex: function() {
return this.__currentIndex
},
appendButton: function() {
return this.appendWidget.apply(this, arguments)
},
insertButton: function() {
return this.insertWidget.apply(this, arguments)
},
select: function(b) {
return this.__options.disabled ? this : (b instanceof c && (b = a.inArray(b, this.__widgets)), 0 > b ? this.clearSelect() : (b = this.__widgets[b], this.__pressButton(b), this))
},
selectByValue: function(a) {
var b = this.__widgets.map(function(a) {
return a.getValue()
});
return this.select(b.indexOf(a))
},
clearSelect: function() {
return this.__pressButton(null), this
},
removeButton: function() {
return this.removeWidget.apply(this, arguments)
},
insertWidget: function(a, b) {
var c = this.callBase(a, b);
return null === c ? c : (a <= this.__currentIndex && this.__currentIndex++, a <= this.__prevIndex && this.__prevIndex++, c)
},
removeWidget: function(a) {
var b = a;
return "number" != typeof b && (b = this.indexOf(a)), a = this.callBase(a), b === this.__currentIndex ? this.__currentIndex = -1 : b < this.__currentIndex && this.__currentIndex--, b === this.__prevIndex ? this.__prevIndex = -1 : b < this.__prevIndex && this.__prevIndex--, a
},
__initOptions: function() {
this.callBase(), this.widgetName = "Buttonset", this.__currentIndex = this.__options.selected, this.__prevIndex = -1
},
__render: function() {
return this.callBase(), a(this.__element).addClass(b.classPrefix + "buttonset"), this.__initButtons(), this
},
__initButtons: function() {
var b = this,
d = null;
a.each(this.__options.buttons, function(e, f) {
d = new c(a.extend({}, f, {
pressed: e === b.__options.selected,
preventDefault: !0
})), d.__on("click", function() {
b.isDisabled() || b.__pressButton(this)
}), d.__on("change", function(a) {
a.stopPropagation()
}), b.appendButton(d)
})
},
__pressButton: function(b) {
this.__prevIndex = this.__currentIndex, this.__currentIndex = this.indexOf(b), this.__currentIndex !== this.__prevIndex && (b && b.press(), a.each(this.__widgets, function(a, c) {
c !== b && c.bounce()
}), this.trigger("change", {
currentIndex: this.__currentIndex,
prevIndex: this.__prevIndex
}))
},
__valid: function(a) {
return a instanceof c
}
})
}
}, _p[37] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(19),
d = _p.r(42),
e = _p.r(48);
return _p.r(13).createClass("Button", {
base: _p.r(60),
constructor: function(b) {
var c = {
label: null,
text: null,
icon: null,
layout: "right"
};
b = a.extend({}, c, b), this.callBase(b)
},
getLabel: function() {
return this.__labelWidget.getText()
},
setLabel: function(a) {
return this.__labelWidget.setText(a)
},
getLabelWidget: function() {
return this.__labelWidget
},
getIconWidget: function() {
return this.__iconWidget
},
__render: function() {
switch (this.callBase(), this.__iconWidget = new d(this.__options.icon), this.__labelWidget = new e(this.__options.label), this.__options.layout) {
case "left":
case "top":
this.__element.appendChild(this.__labelWidget.getElement()), this.__element.appendChild(this.__iconWidget.getElement());
break;
case "right":
case "bottom":
default:
this.__element.appendChild(this.__iconWidget.getElement()), this.__element.appendChild(this.__labelWidget.getElement())
}
a(this.__element).addClass(b.classPrefix + "button-layout-" + this.__options.layout)
},
__initOptions: function() {
this.callBase(), this.widgetName = "Button", this.__tpl = c, this.__iconWidget = null, this.__labelWidget = null, "object" != typeof this.__options.label && (this.__options.label = {
text: this.__options.label
}), "object" != typeof this.__options.icon && (this.__options.icon = {
img: this.__options.icon
})
},
__initEvent: function() {
this.callBase(), this.on("click", function() {
this.__trigger("btnclick")
})
}
})
}
}, _p[38] = {
value: function() {
var a = _p.r(13),
b = _p.r(12),
c = _p.r(49),
d = _p.r(20),
e = _p.r(4);
return a.createClass("ColorPicker", {
base: _p.r(54),
constructor: function(a) {
var b = {
clearText: "",
commonText: "",
commonColor: [
["#ffffff", "#000000", "#eeece1", "#1f497d", "#4f81bd", "#c0504d", "#9bbb59", "#8064a2", "#4bacc6", "#f79646"],
["#f2f2f2", "#808080", "#ddd8c2", "#c6d9f1", "#dbe5f1", "#f2dbdb", "#eaf1dd", "#e5dfec", "#daeef3", "#fde9d9"],
["#d9d9d9", "#595959", "#c4bc96", "#8db3e2", "#b8cce4", "#e5b8b7", "#d6e3bc", "#ccc0d9", "#b6dde8", "#fbd4b4"],
["#bfbfbf", "#404040", "#938953", "#548dd4", "#95b3d7", "#d99594", "#c2d69b", "#b2a1c7", "#92cddc", "#fabf8f"],
["#a6a6a6", "#262626", "#4a442a", "#17365d", "#365f91", "#943634", "#76923c", "#5f497a", "#31849b", "#e36c0a"],
["#7f7f7f", "#0d0d0d", "#1c1a10", "#0f243e", "#243f60", "#622423", "#4e6128", "#3f3151", "#205867", "#974706"]
],
standardText: "",
standardColor: ["#c00000", "#ff0000", "#ffc000", "#ffff00", "#92d050", "#00b050", "#00b0f0", "#0070c0", "#002060", "#7030a0"]
};
a = e.extend({}, b, a), this.callBase(a)
},
show: function() {
return this.__inDoc || (this.__inDoc = !0, this.appendTo(this.__element.ownerDocument.body)), this.__maskWidget.show(), this.callBase(), this
},
hide: function() {
return this.callBase(), this.__maskWidget.hide(), this
},
attachTo: function(a) {
var b = this;
a.on("click", function() {
b.appendTo(a.getElement().ownerDocument.body), b.positionTo(a), b.show()
})
},
__initOptions: function() {
this.callBase(), this.widgetName = "ColorPicker", this.__contentElement = null, this.__maskWidget = null, this.__inDoc = !1
},
__render: function() {
this.callBase(), e(this.__element).addClass(b.classPrefix + "colorpicker");
var f = a.Tpl.compile(d, this.__options);
this.__contentElement.appendChild(e(f)[0]), this.__previewElement = e(this.__contentElement).find("." + b.classPrefix + "colorpicker-preview"), this.__clearElement = e(this.__contentElement).find("." + b.classPrefix + "colorpicker-clear"), this.__maskWidget = new c(this.__options.mask)
},
__initEvent: function() {
var a = this;
this.callBase(), this.on("click", function(c) {
var d, f = e(c.target);
f.hasClass(b.classPrefix + "colorpicker-item") ? (d = f.attr("data-color"), a.trigger("selectcolor", d), a.hide()) : f.hasClass(b.classPrefix + "colorpicker-clear") && (a.trigger("selectcolor", ""), a.hide())
}), this.on("mouseover", function(c) {
var d, f = e(c.target);
f.hasClass(b.classPrefix + "colorpicker-item") && (d = f.attr("data-color"), e(a.__element).find("." + b.classPrefix + "colorpicker-preview").css({
"background-color": d,
"border-color": d
}))
}), this.__maskWidget.on("click", function() {
a.hide()
})
}
})
}
}, _p[39] = {
value: function() {
var a = _p.r(13),
b = _p.r(12),
c = _p.r(60),
d = _p.r(0),
e = _p.r(4);
return a.createClass("Container", {
base: c,
constructor: function(a) {
var b = {
column: !1,
widgets: null
};
a = e.extend({}, b, a), this.callBase(a)
},
indexOf: function(a) {
return e.inArray(a, this.__widgets)
},
disable: function() {
this.callBase(), e.each(this.__widgets, function(a, b) {
b.disable()
})
},
enable: function() {
this.callBase(), e.each(this.__widgets, function(a, b) {
b.enable()
})
},
getWidgets: function() {
return this.__widgets
},
getWidget: function(a) {
return this.__widgets[a] || null
},
getWidgetByValue: function(a) {
var b = null;
return e.each(this.__widgets, function(c, d) {
return d.getValue() === a ? (b = d, !1) : void 0
}), b
},
appendWidget: function(a) {
return this.__valid(a) ? (this.__options.disabled && a.disable(), this.__widgets.push(a), a.appendTo(this.__contentElement), this.__options.column ? (this.__widgets.length > 0 && this.__widgets.length % this.__options.column === 0 && this.__contentElement.appendChild(e('<span class="fui-column"></span>')[0]), e(a.getElement()).addClass(b.classPrefix + "panel-column-widget"), a) : a) : null
},
appendWidgets: function(a) {
var b = this,
c = a;
return e.isArray(a) || (c = arguments), e.each(c, function(a, c) {
b.appendWidget(c)
}), this
},
insertWidget: function(a, c) {
var d = null;
return 0 === this.__widgets.length ? this.appendWidget(c) : this.__valid(c) ? (this.__options.disabled && c.disable(), d = this.__widgets[a], this.__widgets.splice(a, 0, c), this.__contentElement.insertBefore(c.getElement(), d.getElement()), this.__options.column === !1 ? c : (this.__contentElement.insertBefore(e('<span class="fui-column"></span>')[0], d.getElement()), e(c.getElement()).addClass(b.classPrefix + "panel-column-widget"), c)) : null
},
insertWidgets: function(a, b) {
var c = this,
d = b;
return e.isArray(b) || (d = [].slice.call(arguments, 1)), e.each(d, function(b, d) {
c.insertWidget(a, d), a++
}), this
},
getContentElement: function() {
return this.__contentElement
},
removeWidget: function(a) {
return "number" == typeof a ? a = this.__widgets.splice(a, 1)[0] : this.__widgets.splice(this.indexOf(a), 1), this.__contentElement.removeChild(a.getElement()), e(a.getElement()).removeClass(b.classPrefix + "panel-column-widget"), a
},
__initOptions: function() {
this.widgetName = "Container", this.__widgets = [], this.__contentElement = null, this.__options.column -= 0
},
__render: function() {
return this.callBase(), this.__contentElement = this.__element, e(this.__element).addClass(b.classPrefix + "container"), this.__options.column && e(this.__element).addClass(b.classPrefix + "container-column"), this
},
__appendChild: function(a) {
return this.appendWidget(a)
},
__initWidgets: function() {
if (this.__options.widgets) {
var a = d.parse(this.__options.widgets),
b = this;
e.isArray(a) || (a = [a]), e.each(a, function(a, c) {
b.appendWidget(c)
})
}
},
__valid: function(a) {
return a instanceof c
}
})
}
}, _p[40] = {
value: function() {
var a = _p.r(13),
b = _p.r(12),
c = _p.r(60),
d = _p.r(49),
e = _p.r(21),
f = _p.r(37),
g = b.layout,
h = _p.r(4),
i = {
CANCEL: "cancel",
OK: "ok"
};
return a.createClass("Dialog", {
base: _p.r(54),
constructor: function(a) {
var c = {
layout: g.CENTER,
caption: null,
resize: "height",
draggable: !0,
closeButton: !0,
mask: {
color: "#000",
opacity: .2
},
prompt: !1,
buttons: [{
className: b.classPrefix + "xdialog-ok-btn",
action: "ok",
label: "\u786e\u5b9a"
}, {
className: b.classPrefix + "xdialog-cancel-btn",
action: "cancel",
label: "\u53d6\u6d88"
}]
};
a = h.extend({}, c, a), this.callBase(a)
},
open: function() {
return this.__fire("open", function() {
this.show()
}), this
},
close: function() {
return this.__fire("close", function() {
this.hide()
}), this
},
getButtons: function() {
return this.__buttons
},
getButton: function(a) {
return this.__buttons[a]
},
appendTo: function(a) {
return this.callBase(a), this.__maskWidget.appendTo(a), this.__inDoc = !0, this
},
show: function() {
return this.__target || (this.__target = this.__element.ownerDocument.body), this.__inDoc || this.appendTo(this.__element.ownerDocument.body), this.__maskWidget.show(), this.callBase(), this.__openState = !0, this
},
hide: function() {
return this.callBase(), this.__maskWidget.hide(), this.__openState = !1, this
},
toggle: function() {
return this.isOpen() ? this.close() : this.open(), this
},
isOpen: function() {
return this.__openState
},
getHeadElement: function() {
return this.__headElement
},
getBodyElement: function() {
return this.getContentElement()
},
getFootElement: function() {
return this.__footElement
},
__initOptions: function() {
this.callBase(), this.widgetName = "Dialog", this.__target = this.__options.target, this.__layout = this.__options.layout, this.__inDoc = !1, this.__hinting = !1, this.__openState = !1, this.__headElement = null, this.__bodyElement = null, this.__footElement = null, this.__maskWidget = null, this.__buttons = [], this.__target instanceof c && (this.__target = this.__target.getElement())
},
__render: function() {
this.callBase(), this.__innerTpl = a.Tpl.compile(e, this.__options), this.__contentElement.appendChild(h(this.__innerTpl)[0]), h(this.__element).addClass(b.classPrefix + "dialog"), this.__headElement = h(".fui-dialog-head", this.__contentElement)[0], this.__bodyElement = h(".fui-dialog-body", this.__contentElement)[0], this.__footElement = h(".fui-dialog-foot", this.__contentElement)[0], this.__maskWidget = new d(this.__options.mask), this.__contentElement = this.__bodyElement, this.__options.draggable && this.__initDraggable(), this.__options.closeButton && this.__initCloseButton(), this.__initButtons(), this.__initMaskLint()
},
__action: function(a) {
switch (a) {
case i.OK:
this.__triggerHandler(a) !== !1 && this.close();
break;
case i.CANCEL:
this.__triggerHandler(a), this.close()
}
},
__initButtons: function() {
var a = this,
b = null,
c = this.__footElement;
h.each(this.__options.buttons, function(d, e) {
b = new f(e), b.appendTo(c), a.__buttons.push(b)
})
},
__initEvent: function() {
var a = this;
this.callBase(), h([this.__footElement, this.__headElement]).on("btnclick", function(b, c) {
a.__action(c.getOptions().action, c)
}), this.__options.prompt && h(this.__element).on("keydown", function(b) {
switch (b.keyCode) {
case 13:
a.__action(i.OK);
break;
case 27:
a.__action(i.CANCEL)
}
})
},
__initDraggable: function() {
a.createDraggable({
handler: this.__headElement,
target: this.__element
}).bind()
},
__initCloseButton: function() {
var a = new f({
className: "fui-close-button",
action: "cancel",
icon: {
className: "fui-close-button-icon"
}
});
a.appendTo(this.__headElement)
},
__initMaskLint: function() {
var a = this;
this.__maskWidget.on("click", function() {
a.__hint()
})
},
__hint: function() {
if (!this.__hinting) {
this.__hinting = !0;
var a = h(this.__element),
c = this,
d = [b.classPrefix + "mask-hint", b.classPrefix + "mask-animate"];
a.addClass(d.join(" ")), window.setTimeout(function() {
a.removeClass(d[0]), window.setTimeout(function() {
a.removeClass(d[1]), c.__hinting = !1
}, 200)
}, 200)
}
}
})
}
}, _p[41] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(22),
d = _p.r(37),
e = _p.r(51),
f = _p.r(54),
g = _p.r(49);
return _p.r(13).createClass("DropPanel", {
base: _p.r(60),
constructor: function(b) {
var c = {
button: null,
panel: null,
width: null,
height: null
};
b = a.extend({}, c, b), this.callBase(b)
},
disable: function() {
this.callBase()
},
enable: function() {
this.callBase()
},
open: function() {
this.__popupWidget.appendWidget(this.__panelWidget), this.__maskWidget.show(), this.__popupWidget.show();
var b = a(this.__popupWidget.getElement());
b.css("min-width", a(this.__element).outerWidth()), b.css("min-height", a(this.__element).height())
},
close: function() {
this.__maskWidget.hide(), this.__popupWidget.hide(), this.__panelWidget.appendTo(this.__contentElement)
},
getPanelElement: function() {
return this.__panelWidget.getElement()
},
appendWidget: function(a) {
this.__panelWidget.appendWidget(a)
},
getWidgets: function() {
return this.__panelWidget.getWidgets()
},
getWidget: function(a) {
return this.__panelWidget.getWidget(a)
},
appendWidgets: function() {
return this.__panelWidget.appendWidgets.apply(this, arguments), this
},
insertWidget: function(a, b) {
this.__panelWidget.insertWidget(a, b)
},
insertWidgets: function() {
return this.__panelWidget.insertWidgets.apply(this, arguments), this
},
removeWidget: function(a) {
return this.__panelWidget.removeWidget(a)
},
__render: function() {
this.__initOptions(), this.__buttonWidget = new d(this.__options.button), this.__panelWidget = new e(this.__options.content), this.__popupWidget = new f, this.__maskWidget = new g(this.__options.mask), this.callBase(), this.__popupWidget.positionTo(this.__element, "left-top"), a(this.__popupWidget.getElement()).addClass(b.classPrefix + "drop-panel-popup");
var c = a('<div class="' + b.classPrefix + 'drop-panel-content"></div>').append(this.__panelWidget.getElement());
this.__contentElement = c[0], a(this.__element).append(c).append(this.__buttonWidget.getElement()), this.__initDropPanelEvent()
},
__initOptions: function() {
this.widgetName = "DropPanel", this.__tpl = c, this.__buttonWidget = null, this.__popupWidget = null, this.__panelWidget = null, this.__contentElement = null, this.__maskWidget = null, this.__popupState = !1, "object" != typeof this.__options.button && (this.__options.input = {
icon: this.__options.button
})
},
__initDropPanelEvent: function() {
var a = this;
this.__buttonWidget.on("click", function() {
a.__popupState || (a.__appendPopup(), a.__popupState = !0), a.trigger("buttonclick"), a.open()
}), this.__panelWidget.on("click", function() {
a.trigger("panelclick")
}), this.__maskWidget.on("maskclick", function() {
a.close()
})
},
__appendPopup: function() {
this.__popupWidget.appendTo(this.__element.ownerDocument.body)
}
})
}
}, _p[42] = {
value: function() {
var a = _p.r(4),
b = _p.r(23);
return _p.r(13).createClass("Icon", {
base: _p.r(60),
constructor: function(b) {
var c = {
img: null
};
b = a.extend({}, c, b), this.callBase(b)
},
getValue: function() {
return this.__options.value || this.__options.img
},
setImage: function(a) {
return this.__options.img === a ? this : (this.__image && (this.__image.src = a), void this.trigger("iconchange", {
prevImage: this.__prevIcon,
currentImage: this.__currentIcon
}))
},
getImage: function() {
return this.__currentIcon
},
__initOptions: function() {
this.callBase(), this.widgetName = "Icon", this.__tpl = b, this.__prevIcon = null, this.__currentIcon = this.__options.img, this.__image = null
},
__render: function() {
this.__options.__width = this.__options.width, this.__options.__height = this.__options.height, this.__options.width = null, this.__options.height = null, this.callBase(), this.__options.img && (this.__image = a("img", this.__element)[0], null !== this.__options.__width && (this.__image.width = this.__options.__width), null !== this.__options.__height && (this.__image.height = this.__options.__height))
}
})
}
}, _p[43] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(24),
d = _p.r(37),
e = _p.r(45);
return _p.r(13).createClass("InputButton", {
base: _p.r(60),
constructor: function(b) {
var c = {
button: null,
input: null,
placeholder: null,
layout: "right"
};
b = a.extend({}, c, b), this.callBase(b)
},
getValue: function() {
return this.__inputWidget.getValue()
},
setValue: function(a) {
return this.__inputWidget.setValue(a), this
},
reset: function() {
this.__inputWidget.reset()
},
selectAll: function() {
return this.__inputWidget.selectAll(), this
},
selectRange: function(a, b) {
return this.__inputWidget.selectRange(a, b), this
},
focus: function() {
return this.__inputWidget.focus(), this
},
unfocus: function() {
return this.__inputWidget.unfocus(), this
},
__initOptions: function() {
this.callBase(), this.widgetName = "InputButton", this.__tpl = c, this.__inputWidget = null, this.__buttonWidget = null, "object" != typeof this.__options.input && (this.__options.input = {
placeholder: this.__options.input
}), this.__options.input = a.extend({}, this.__options.input, {
placeholder: this.__options.placeholder
}), "object" != typeof this.__options.button && (this.__options.button = {
icon: this.__options.button
})
},
__render: function() {
var c = this;
switch (this.callBase(), this.__buttonWidget = new d(this.__options.button), this.__inputWidget = new e(this.__options.input), this.__options.layout) {
case "left":
case "top":
this.__buttonWidget.appendTo(this.__element), this.__inputWidget.appendTo(this.__element);
break;
case "right":
case "bottom":
default:
this.__inputWidget.appendTo(this.__element), this.__buttonWidget.appendTo(this.__element)
}
a(this.__element).addClass(b.classPrefix + "layout-" + this.__options.layout), this.__buttonWidget.on("click", function() {
c.trigger("buttonclick")
})
}
})
}
}, _p[44] = {
value: function() {
var a = _p.r(4),
b = _p.r(25),
c = _p.r(43),
d = _p.r(50),
e = _p.r(49);
return _p.r(13).createClass("InputMenu", {
base: _p.r(60),
constructor: function(b) {
var c = {
input: null,
menu: null,
mask: null,
selected: -1
};
b = a.extend({}, c, b), this.callBase(b)
},
select: function(a) {
this.__menuWidget.select(a)
},
selectByValue: function(a) {
return this.__selectBy("values", a)
},
selectByLabel: function(a) {
return this.__selectBy("labels", a)
},
clearSelect: function() {
return this.__lastSelect = -1, this.__menuWidget.clearSelect(), this.__inputWidget.reset(), this
},
setValue: function() {
return this
},
getValue: function() {
return this.__menuWidget.getSelectedItem().getValue()
},
open: function() {
this.__maskWidget.show(), this.__menuWidget.show()
},
close: function() {
this.__maskWidget.hide(), this.__menuWidget.hide()
},
__render: function() {
this.__inputWidget = new c(this.__options.input), this.__menuWidget = new d(this.__options.menu), this.__maskWidget = new e(this.__options.mask), this.callBase(), this.__inputWidget.appendTo(this.__element), this.__menuWidget.positionTo(this.__inputWidget), this.__initInputValue()
},
__selectBy: function(b, c) {
var d = this.__getItemValues()[b],
e = -1;
return a.each(d, function(a, b) {
return c === b ? (e = a, !1) : void 0
}), -1 !== e ? (this.select(e), this.__menuWidget.getSelectedItem()) : null
},
__initInputValue: function() {
var a = this.__menuWidget.getItem(this.__options.selected);
a && this.__inputWidget.setValue(a.getLabel())
},
__initEvent: function() {
var a = this;
this.callBase(), this.on("buttonclick", function() {
this.__menuState || (this.__appendMenu(), this.__menuState = !0), this.__inputWidget.unfocus(), this.open()
}), this.on("keypress", function() {
this.__lastTime = new Date
}), this.on("keyup", function(a) {
8 !== a.keyCode && 13 !== a.keyCode && new Date - this.__lastTime < 500 && this.__update()
}), this.on("inputcomplete", function() {
this.__inputWidget.selectRange(99999999), this.__inputComplete()
}), this.__menuWidget.on("select", function(b, c) {
b.stopPropagation(), a.__inputWidget.setValue(c.label), a.trigger("select", c), a.close()
}), this.__menuWidget.on("menuitemclick", function(b, c) {
a.trigger("itemclick", c)
}), this.__menuWidget.on("change", function(b, c) {
b.stopPropagation(), a.trigger("change", c)
}), this.__inputWidget.on("select change", function(a) {
a.stopPropagation()
}), this.__maskWidget.on("maskclick", function() {
a.close()
}), this.on("select", function(a, b) {
this.__lastSelect = b
})
},
__update: function() {
var b = this.__inputWidget.getValue(),
c = b.toLowerCase(),
d = this.__getItemValues().labels,
e = null;
b && (a.each(d, function(a, b) {
return 0 === b.toLowerCase().indexOf(c) ? (e = b, !1) : void 0
}), e && (this.__inputWidget.setValue(e), this.__inputWidget.selectRange(b.length)))
},
__getItemValues: function() {
var b = [],
c = [];
return a.each(this.__menuWidget.getWidgets(), function(a, d) {
c.push(d.getLabel()), b.push(d.getValue())
}), {
labels: c,
values: b
}
},
__inputComplete: function() {
var b = this.__getItemValues(),
c = b.labels,
d = -1,
e = this.__inputWidget.getValue(),
f = this.__lastSelect;
a.each(c, function(a, b) {
return b === e ? (d = a, !1) : void 0
}), this.trigger("select", {
index: d,
label: e,
value: b.values[d]
}), f && f.value === e || this.trigger("change", {
from: f || {
index: -1,
label: null,
value: null
},
to: {
index: d,
label: e,
value: b.values[d]
}
})
},
__appendMenu: function() {
this.__menuWidget.appendTo(this.__inputWidget.getElement().ownerDocument.body)
},
__initOptions: function() {
this.callBase(), this.widgetName = "InputMenu", this.__tpl = b, this.__lastTime = 0, this.__lastSelect = null, this.__inputWidget = null, this.__menuWidget = null, this.__maskWidget = null, this.__menuState = !1, -1 !== this.__options.selected && (this.__options.menu.selected = this.__options.selected)
}
})
}
}, _p[45] = {
value: function() {
var a = _p.r(12),
b = _p.r(4),
c = _p.r(26);
return _p.r(13).createClass("Input", {
base: _p.r(60),
constructor: function(a) {
var c = {
placeholder: null
};
a = b.extend({}, c, a), this.callBase(a)
},
getValue: function() {
return this.__element.value
},
setValue: function(a) {
return this.__element.value = a, this
},
disable: function() {
this.callBase(), this.__element.disabled = !0
},
enable: function() {
this.__element.disabled = !1, this.callBase()
},
reset: function() {
return this.__element.value = this.__options.value || "", this
},
selectAll: function() {
this.__element.select()
},
selectRange: function(a, b) {
if (a || (a = 0), b || (b = 1e9), this.__element.setSelectionRange) this.__element.setSelectionRange(a, b);
else {
var c = this.__element.createTextRange();
c.moveStart("character", a), c.moveEnd("character", b), c.select()
}
},
focus: function() {
return this.__element.focus(), this
},
unfocus: function() {
return this.__element.blur(), this
},
__initOptions: function() {
this.callBase(), this.widgetName = "Input", this.__tpl = c, this.__allow_focus = !0
},
__render: function() {
this.callBase(), this.__element.removeAttribute("unselectable"), this.__options.placeholder && this.__element.setAttribute("placeholder", this.__options.placeholder), this.addClass(a.classPrefix + "selectable")
},
__initEvent: function() {
this.callBase(), this.on("keydown", function(a) {
13 === a.keyCode && this.trigger("inputcomplete", {
value: this.getValue()
})
})
}
})
}
}, _p[46] = {
value: function() {
var a = _p.r(13),
b = _p.r(27),
c = _p.r(42),
d = _p.r(48),
e = _p.r(12),
f = _p.r(4);
return a.createClass("Item", {
base: _p.r(60),
constructor: function(a) {
var b = {
label: "",
icon: null,
selected: !1,
textAlign: "left"
};
a = f.extend({}, b, a), this.callBase(a)
},
getValue: function() {
return this.__options.value || this.__labelWidget.getValue() || this.__iconWidget.getValue() || null
},
select: function() {
return this.__update(!0), this
},
unselect: function() {
return this.__update(!1), this
},
isSelected: function() {
return this.__selectState
},
setLabel: function(a) {
return this.__labelWidget.setText(a), this
},
getLabel: function() {
return this.__labelWidget.getText()
},
setIcon: function(a) {
return this.__iconWidget.setImage(a), this
},
getIcon: function() {
return this.__iconWidget.getImage()
},
__render: function() {
this.callBase(), this.__iconWidget = new c(this.__options.icon), this.__labelWidget = new d(this.__options.label), this.__iconWidget.appendTo(this.__element), this.__labelWidget.appendTo(this.__element)
},
__update: function(a) {
var b = a ? "addClass" : "removeClass";
return a = !! a, f(this.__element)[b](e.classPrefix + "item-selected"), this.__selectState = a, this.trigger(a ? "itemselect" : "itemunselect"), this
},
__initEvent: function() {
this.callBase(), this.on("click", function() {
this.trigger("itemclick")
})
},
__initOptions: function() {
this.callBase(), this.widgetName = "Item", this.__tpl = b, this.__iconWidget = null, this.__labelWidget = null, this.__selectState = this.__options.selected, "object" != typeof this.__options.label && (this.__options.label = {
text: this.__options.label
}), this.__options.label.textAlign || (this.__options.label.textAlign = this.__options.textAlign), "object" != typeof this.__options.icon && (this.__options.icon = {
img: this.__options.icon
})
}
})
}
}, _p[47] = {
value: function() {
var a = _p.r(13),
b = _p.r(12),
c = _p.r(48),
d = _p.r(4);
return a.createClass("LabelPanel", {
base: _p.r(51),
constructor: function(a) {
var b = {
layout: "bottom"
};
a = d.extend({}, b, a), this.callBase(a)
},
disable: function() {
this.callBase(), this.__labelWidget.disable()
},
enable: function() {
this.callBase(), this.__labelWidget.enable()
},
__render: function() {
var a = null,
e = this.__options,
f = this.__element,
g = b.classPrefix,
h = "fui-label-panel-content",
i = null;
return this.__labelWidget = new c(e.label), this.callBase(), i = this.__contentElement, d(f).addClass(g + "label-panel"), d(f).addClass(g + "layout-" + e.layout), a = d('<div class="' + h + '"></div>'), i.appendChild(this.__labelWidget.getElement()), i.appendChild(a[0]), this.__contentElement = a[0], this
},
__initOptions: function() {
var a = this.__options.label;
this.callBase(), this.widgetName = "LabelPanel", this.__labelWidget = null, "object" != typeof a && (this.__options.label = {
text: a
}), this.__options.label.className || (this.__options.label.className = ""), this.__options.label.className += " fui-label-panel-label"
}
})
}
}, _p[48] = {
value: function() {
var a = _p.r(13),
b = _p.r(28),
c = _p.r(4);
return a.createClass("Label", {
base: _p.r(60),
constructor: function(a) {
var b = {
text: "",
textAlign: "center"
};
a = c.extend({}, b, a), this.callBase(a)
},
getValue: function() {
return this.__options.text
},
setText: function(a) {
var b = this.__options.text;
return this.__options.text = a, c(this.__element).text(a), this.trigger("labelchange", {
currentText: a,
prevText: b
}), this
},
getText: function() {
return this.__options.text
},
__allowShowTitle: function() {
return !1
},
__initOptions: function() {
this.callBase(), this.widgetName = "Label", this.__tpl = b, this.__options.text = this.__options.text.toString()
}
})
}
}, _p[49] = {
value: function() {
function a() {
e(window).on("resize", function() {
e.each(g, function(a, b) {
b && !b.isHide() && b.__resize()
})
})
}
var b = _p.r(13),
c = _p.r(29),
d = _p.r(60),
e = _p.r(4),
f = !1,
g = [];
return b.createClass("Mask", {
base: _p.r(60),
constructor: function(a) {
var b = {
bgcolor: "#000",
opacity: 0,
inner: !0,
target: null,
scroll: !1,
hide: !0
};
a = e.extend({}, b, a), this.callBase(a)
},
maskTo: function(a) {
return a && (this.__target = a), this
},
show: function() {
var a = null;
this.__target || (this.__target = this.__element.ownerDocument.body), a = this.__target.ownerDocument.documentElement, e.contains(a, this.__element) || this.appendTo(this.__target.ownerDocument.body), this.callBase(), this.__position(), this.__resize(), this.__hideState = !1
},
hide: function() {
this.callBase(), this.__hideState = !0
},
isHide: function() {
return this.__hideState
},
__initOptions: function() {
this.callBase(), this.widgetName = "Mask", this.__tpl = c, this.__cacheId = g.length, this.__hideState = !0, g.push(this), this.__target = this.__options.target, this.__target instanceof d && (this.__target = this.__target.getElement())
},
__render: function() {
this.callBase(), this.__initMaskEvent(), f || (f = !0, a())
},
__initMaskEvent: function() {
this.on("mousewheel", function(a) {
var b = a.originalEvent;
a.preventDefault(), a.stopPropagation(), this.trigger("scroll", {
delta: b.wheelDelta || b.deltaY || b.detail
})
}), this.on("click", function(a) {
a.stopPropagation(), a.target === this.__element && this.trigger("maskclick")
})
},
__resize: function() {
var a = null;
this.__targetIsBody() ? (a = e(b.getView(this.__target)), a = {
width: a.width(),
height: a.height()
}) : a = b.getRect(this.__target), this.__element.style.width = a.width + "px", this.__element.style.height = a.height + "px"
},
__position: function() {
var a = null,
c = null;
this.__targetIsBody() ? a = {
top: 0,
left: 0
} : (c = b.getRect(this.__target), a = {
top: c.top,
left: c.left
}), e(this.__element).css("top", a.top + "px").css("left", a.left + "px")
},
__targetIsBody: function() {
return "body" === this.__target.tagName.toLowerCase()
}
})
}
}, _p[50] = {
value: function() {
var a = _p.r(13),
b = _p.r(46),
c = _p.r(12),
d = _p.r(4);
return a.createClass("Menu", {
base: _p.r(54),
constructor: function(a) {
var b = {
column: !0,
selected: -1,
textAlign: "left",
items: []
};
a = d.extend({}, b, a), this.callBase(a)
},
select: function(a) {
var b = this.__widgets[a];
return b ? (this.__selectItem(b), this) : this
},
clearSelect: function() {
var a = this.getSelectedItem();
a && a.unselect(), this.__currentSelect = -1, this.__prevSelect = -1
},
getItems: function() {
return this.getWidgets.apply(this, arguments)
},
getItem: function() {
return this.getWidget.apply(this, arguments)
},
appendItem: function() {
return this.appendWidget.apply(this, arguments)
},
insertItem: function() {
return this.insertWidget.apply(this, arguments)
},
removeItem: function() {
return this.removeWidget.apply(this, arguments)
},
clearItems: function() {
for (; this.getItems().length;) this.removeItem(0);
return this
},
getSelected: function() {
return this.__currentSelect
},
getSelectedItem: function() {
return this.getItem(this.__currentSelect)
},
insertWidget: function(a, b) {
var c = this.callBase(a, b);
return null === c ? c : (a <= this.__currentSelect && this.__currentSelect++, a <= this.__prevSelect && this.__prevSelect++, c)
},
removeWidget: function(a) {
var b = a;
return "number" != typeof b && (b = this.indexOf(a)), a = this.callBase(a), b === this.__currentSelect ? this.__currentSelect = -1 : b < this.__currentSelect && this.__currentSelect--, b === this.__prevSelect ? this.__prevSelect = -1 : b < this.__prevSelect && this.__prevSelect--, a
},
__initOptions: function() {
this.callBase(), this.__prevSelect = -1, this.__currentSelect = this.__options.selected, this.widgetName = "Menu"
},
__render: function() {
var a = this,
e = this.__options.textAlign,
f = this.__options.selected;
this.callBase(), d(this.__element).addClass(c.classPrefix + "menu"), d.each(this.__options.items, function(c, d) {
"object" != typeof d && (d = {
label: d
}), d.selected = c === f, d.textAlign = e, a.appendItem(new b(d))
})
},
__initEvent: function() {
this.callBase(), this.on("itemclick", function(a) {
this.__selectItem(a.widget, !0)
})
},
__selectItem: function(a, b) {
var c = null;
if (this.__currentSelect > -1 && this.__widgets[this.__currentSelect].unselect(), this.__prevSelect = this.__currentSelect, this.__currentSelect = this.indexOf(a), a.select(), c = {
index: this.__currentSelect,
label: a.getLabel(),
value: a.getValue()
}, b && this.trigger("menuitemclick", c), this.trigger("select", c), this.__prevSelect !== this.__currentSelect) {
var d = this.__widgets[this.__prevSelect] || null;
this.trigger("change", {
from: {
index: this.__prevSelect,
label: d && d.getLabel(),
value: d && d.getValue()
},
to: {
index: this.__currentSelect,
label: a.getLabel(),
value: a.getValue()
}
})
}
},
__valid: function(a) {
return a instanceof b
}
})
}
}, _p[51] = {
value: function() {
var a = _p.r(13),
b = _p.r(30),
c = _p.r(4);
return a.createClass("Panel", {
base: _p.r(39),
constructor: function(a) {
var b = {};
a = c.extend({}, b, a), this.callBase(a)
},
__render: function() {
var a = null;
this.callBase(), a = c('<div class="fui-panel-content"></div>'), this.__contentElement.appendChild(a[0]), this.__contentElement = a[0]
},
__initOptions: function() {
this.callBase(), this.widgetName = "Panel", this.__tpl = b
}
})
}
}, _p[52] = {
value: function() {
var a = _p.r(13),
b = _p.r(12),
c = _p.r(4),
d = _p.r(50);
return a.createClass("PopupMenu", {
base: _p.r(53),
constructor: function(a) {
this.callBase(c.extend({
menu: {}
}, a))
},
getMenuWidget: function() {
return this.__menuWidget
},
__initOptions: function() {
this.callBase(), this.widgetName = "PopupMenu"
},
__render: function() {
this.callBase(), this.__menuWidget = new d, this.appendWidget(this.__menuWidget), c(this.__element).addClass(b.classPrefix + "popup-menu")
}
})
}
}, _p[53] = {
value: function() {
var a = _p.r(13),
b = _p.r(12),
c = _p.r(60),
d = _p.r(49),
e = _p.r(4);
return a.createClass("Popup", {
base: _p.r(54),
constructor: function(a) {
var b = {
mask: {}
};
a = e.extend({}, b, a), this.callBase(a)
},
open: function() {
return this.__fire("open", function() {
this.show()
}), this
},
close: function() {
return this.__fire("close", function() {
this.hide()
}), this
},
show: function() {
return this.__target || (this.__target = this.__element.ownerDocument.body), this.__inDoc || (this.__inDoc = !0, this.appendTo(this.__element.ownerDocument.body)), this.__maskWidget.show(), this.callBase(), this.__openState = !0, this
},
hide: function() {
return this.callBase(), this.__maskWidget.hide(), this.__openState = !1, this
},
toggle: function() {
return this.isOpen() ? this.close() : this.open(), this
},
isOpen: function() {
return this.__openState
},
__initOptions: function() {
this.callBase(), this.widgetName = "Popup", this.__target = this.__options.target, this.__layout = this.__options.layout, this.__inDoc = !1, this.__openState = !1, this.__maskWidget = null, this.__target instanceof c && (this.__target = this.__target.getElement())
},
__render: function() {
this.callBase(), e(this.__element).addClass(b.classPrefix + "popup"), this.__maskWidget = new d(this.__options.mask), this.__options.draggable && this.__initDraggable(), this.__initMaskEvent()
},
__initMaskEvent: function() {
var a = this;
this.__maskWidget.on("click", function() {
a.close()
})
}
})
}
}, _p[54] = {
value: function() {
var a = _p.r(13),
b = _p.r(12),
c = _p.r(60),
d = b.layout,
e = _p.r(4);
return a.createClass("PPanel", {
base: _p.r(51),
constructor: function(a) {
var b = {
layout: d.BOTTOM,
target: null,
bound: null,
diff: 10,
hide: !0,
resize: "all",
iframe: !1
};
a = e.extend({}, b, a), this.callBase(a)
},
positionTo: function(a, b) {
return a instanceof c && (a = a.getElement()), this.__target = a, b && (this.__layout = b), this
},
show: function() {
var b = null;
return this.__target ? (this.__options.bound || (this.__options.bound = this.__target.ownerDocument.body), b = this.__target.ownerDocument.documentElement, e.contains(b, this.__element) || this.__target.ownerDocument.body.appendChild(this.__element), e.contains(b, this.__target) && (this.callBase(a.getMarker()), this.__position(), this.__resize()), this) : this.callBase()
},
__initOptions: function() {
this.callBase(), this.widgetName = "PPanel", this.__target = this.__options.target, this.__layout = this.__options.layout, this.__height_resized = !1
},
__render: function() {
this.callBase(), this.__options.iframe && e('<iframe class="fui-ppanel-cover" frameborder="0"></iframe>').appendTo(this.__element), e(this.__element).addClass(b.classPrefix + "ppanel")
},
__position: function() {
var a = null,
c = b.classPrefix + "ppanel-position";
e(this.__element).addClass(c), a = this.__getLocation(), e(this.__element).css("top", a.top + "px").css("left", a.left + "px")
},
__resize: function() {
var b = a.getBound(this.__target);
switch (this.__options.resize) {
case "all":
this.__resizeWidth(b), this.__resizeHeight();
break;
case "width":
this.__resizeWidth(b);
break;
case "height":
this.__resizeHeight()
}
},
__resizeWidth: function(a) {
if (this.__target) {
var b = e(this.__element),
c = b.outerWidth(),
d = b.outerHeight(),
f = a.width - c - d;
this.__element.style.minWidth = Math.max(f, 0) + "px"
}
},
__resizeHeight: function() {
var b = null,
c = null,
d = 0;
c = a.getRect(this.__element), c.height = this.__element.scrollHeight, c.bottom = c.top + c.height, b = this.__getBoundRect(), d = c.bottom - b.bottom, d > 0 ? (this.__height_resized = !0, d = c.height - d - this.__options.diff, e(this.__element).css("height", d + "px")) : this.__height_resized && (this.__element.style.height = null)
},
__getLocation: function() {
var b = a.getBound(this.__target);
switch (this.__layout) {
case d.CENTER:
case d.MIDDLE:
return this.__getCenterLayout(b);
case d.LEFT:
case d.RIGHT:
case d.BOTTOM:
case d.TOP:
return this.__getOuterLayout(b);
default:
return this.__getInnerLayout(b)
}
return location
},
__getCenterLayout: function(b) {
var c = {
top: 0,
left: 0
},
d = a.getRect(this.__element),
e = 0;
return e = b.height - d.height, e > 0 && (c.top = b.top + e / 2), e = b.width - d.width, e > 0 && (c.left = b.left + e / 2), c
},
__getOuterLayout: function(b) {
var c = {
top: 0,
left: 0
},
e = a.getRect(this.__element);
switch (this.__layout) {
case d.TOP:
c.left = b.left, c.top = b.top - e.height;
break;
case d.LEFT:
c.top = b.top, c.left = b.left - e.width;
break;
case d.RIGHT:
c.top = b.top, c.left = b.right;
break;
case d.BOTTOM:
default:
c.left = b.left, c.top = b.bottom
}
return c
},
__getInnerLayout: function(b) {
var c = {
top: 0,
left: 0
},
e = b,
f = a.getRect(this.__element);
switch (this.__layout) {
case d.LEFT_TOP:
c.top = e.top, c.left = e.left;
break;
case d.RIGHT_TOP:
c.top = e.top, c.left = e.left + e.width - f.width;
break;
case d.LEFT_BOTTOM:
c.top = e.top + e.height - f.height, c.left = e.left;
break;
case d.RIGHT_BOTTOM:
c.top = e.top + e.height - f.height, c.left = e.left + e.width - f.width
}
return this.__correctionLocation(c)
},
__getBoundRect: function() {
var b = -1,
c = -1,
d = null;
return "body" === this.__options.bound.tagName.toLowerCase() ? (d = a.getView(this.__options.bound), b = e(d).width(), c = e(d).height(), {
top: 0,
left: 0,
right: b,
bottom: c,
width: b,
height: c
}) : a.getRect(this.__options.bound)
},
__correctionLocation: function(b) {
var c = a.getRect(this.__element),
e = a.getRect(this.__target),
f = this.__getBoundRect();
switch (this.__layout) {
case d.LEFT_TOP:
case d.LEFT_BOTTOM:
b.left + c.width > f.right && (b.left += e.width - c.width);
break;
case d.RIGHT_TOP:
case d.RIGHT_BOTTOM:
b.left < f.left && (b.left = e.left)
}
return b
}
})
}
}, _p[55] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(51),
d = _p.r(54),
e = _p.r(37),
f = _p.r(0),
g = _p.r(49);
return _p.r(13).createClass("SelectMenu", {
base: c,
constructor: function(b) {
var c = {
bed: {
className: "fui-select-menu-bed"
},
button: {
className: "fui-select-menu-btn"
},
events: ["btnclick"],
selected: -1
};
b = a.extend({}, c, b), this.callBase(b)
},
show: function() {
this.__widgetMenu.show(), this.__mask.show()
},
hide: function() {
this.__widgetMenu.hide(), this.__mask.hide()
},
getValue: function() {
var a = this.__widgets[this.__selected];
return a ? a.getValue() : null
},
getSelected: function() {
return this.__widgets[this.__selected]
},
select: function(a) {
var b = this.__widgets[a],
c = "fui-select-menu-selected",
d = this.__selected,
e = this.__widgets[this.__selected],
f = this.__bed.getElement();
return b ? (e && e.removeClass(c), f.innerHTML = "", f.appendChild(b.cloneElement()), b.addClass(c), this.__selected = a, this.trigger("select", {
index: a,
widget: b
}), this.__selected !== d && this.trigger("change", {
from: {
index: d,
widget: e
},
to: {
index: a,
widget: b
}
}), this) : this
},
selectByWidget: function(a) {
return this.select(this.indexOf(a))
},
selectByValue: function(b) {
var c = -1;
return a.each(this.__widgets, function(a, d) {
return d.getValue() === b ? (c = a, !1) : void 0
}), this.select(c)
},
__render: function() {
this.__bed = new c(this.__options.bed), this.__dropBtn = new e(this.__options.button), this.__widgetMenu = new d({
className: "fui-select-menu-container",
layout: b.layout.LEFT_TOP,
column: this.__column
}), this.__mask = new g;
var h = this.__initWidgets();
this.callBase(), a(this.__element).addClass(b.classPrefix + "select-menu"), this.appendWidgets([this.__bed, this.__dropBtn, this.__mask, this.__widgetMenu]), this.__widgets = [], this.__oldContentElement = this.__contentElement, this.__contentElement = this.__widgetMenu, this.appendWidgets(h), this.__widgetMenu.positionTo(this.getElement()), a.isNumeric(this.__options.selected) ? -1 != this.__options.selected && this.select(this.__options.selected) : this.__bed.appendWidget(f.parse(this.__options.selected))
},
__initWidgets: function() {
var b = [];
if (this.__options.widgets) return a.each(this.__options.widgets, function(a, c) {
b.push(f.parse(c))
}), b
},
__initEvent: function() {
this.callBase();
var a = this;
this.__dropBtn.on("btnclick", function() {
a.show()
}), this.__mask.on("click", function() {
a.hide()
}), this.__widgetMenu.on(this.__options.events.join(" "), function(b) {
var c = b.target;
if (c !== a.__oldContentElement && c !== a.getElement) return b.stopPropagation(), a.selectByWidget(b.widget), a.hide(), !1
})
},
__initOptions: function() {
this.callBase(), this.widgetName = "SelectMenu", this.__bed = null, this.__dropBtn = null, this.__widgetMenu = null, this.__mask = null, this.__widgets = [], this.__selected = -1, this.__oldContentElement = null, this.__column = this.__options.column, delete this.__options.column
}
})
}
}, _p[56] = {
value: function() {
var a = _p.r(13),
b = _p.r(31),
c = _p.r(4);
return a.createClass("Separator", {
base: _p.r(60),
constructor: function(a) {
var b = {
width: 1,
height: "100%",
bgcolor: "#e1e1e1"
};
a = c.extend({}, b, a), this.callBase(a)
},
__initOptions: function() {
this.callBase(), this.widgetName = "Separator", this.__tpl = b
}
})
}
}, _p[57] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(32),
d = _p.r(37),
e = _p.r(45),
f = _p.r(51);
return _p.r(13).createClass("SpinButton", {
base: _p.r(60),
constructor: function(b) {
var c = {
suffix: null,
selected: -1,
items: []
};
b = a.extend({}, c, b), this.callBase(b)
},
getValue: function() {
return this.__options.items[this.__currentSelected] || null
},
setValue: function() {},
select: function(a) {
this.__update(a)
},
selectByValue: function(b) {
b += "", this.__update(a.inArray(b, this.__options.items))
},
__render: function() {
this.callBase(), this.__buttons = [new d({
className: b.classPrefix + "spin-up-btn"
}), new d({
className: b.classPrefix + "spin-down-btn"
})], this.__inputWidget = new e, this.__panelWidget = new f({
column: !0
}), this.__inputWidget.appendTo(this.__element), this.__panelWidget.appendWidget(this.__buttons[0]), this.__panelWidget.appendWidget(this.__buttons[1]), this.__panelWidget.appendTo(this.__element), this.__initSelected(this.__options.selected)
},
__initEvent: function() {
var a = this;
this.callBase(), this.__buttons[0].on("btnclick", function() {
a.__update(a.__currentSelected - 1)
}), this.__buttons[1].on("btnclick", function() {
a.__update(a.__currentSelected + 1)
})
},
__initSelected: function(a) {
this.__update(a, !1)
},
__update: function(a, b) {
var c = -1,
d = null,
e = null;
0 > a || a >= this.__options.items.length || (c = this.__currentSelected, this.__currentSelected = a, e = this.__options.items[this.__currentSelected], d = e + " " + (this.__options.suffix || ""), this.__inputWidget.setValue(d), b !== !1 && this.trigger("change", {
from: this.__options.items[c] || null,
to: e
}))
},
__initOptions: function() {
var b = this.__options.items;
this.callBase(), this.widgetName = "SpinButton", this.__tpl = c, this.__buttons = [], this.__panelWidget = null, this.__inputWidget = null, this.__currentSelected = -1, a.each(b, function(a, c) {
b[a] = c + ""
})
}
})
}
}, _p[58] = {
value: function() {
var a = _p.r(4),
b = _p.r(12),
c = _p.r(33),
d = _p.r(37),
e = _p.r(51);
return _p.r(13).createClass("Tabs", {
base: _p.r(60),
constructor: function(b) {
var c = {
selected: 0,
buttons: [],
panels: []
};
b = a.extend({}, c, b), this.callBase(b)
},
getButtons: function() {
return this.__btns
},
getButton: function(a) {
return this.getButtons()[a] || null
},
getButtonByValue: function(b) {
var c = null;
return a.each(this.__btns, function(a, d) {
return d.getValue() === b ? (c = d, !1) : void 0
}), c
},
getPanels: function() {
return this.__panels
},
getPanel: function(a) {
return this.getPanels()[a] || null
},
getPanelByValue: function(b) {
var c = null;
return a.each(this.__panels, function(a, d) {
return d.getValue() === b ? (c = d, !1) : void 0
}), c
},
getSelectedIndex: function() {
return this.__selected
},
getSelected: function() {
var a = this.getSelectedIndex();
return {
button: this.getButton(a),
panel: this.getPanel(a)
}
},
appendTab: function(a) {
return a.panels = a.panels || [], this.__renderByOptions(a)
},
removeTab: function(a) {
if (0 > a) return null;
var b = this.__btns.splice(a, 1),
c = this.__panels.splice(a, 1);
return b.length ? (b = b[0], c = c[0], b.remove(), c.remove(), {
button: b,
panel: c
}) : null
},
select: function(a) {
var b = null;
return this.__selectItem(a) ? (b = this.__getInfo(a), this.trigger("tabsselect", b), this.__prevSelected !== this.__selected && this.trigger("tabschange", {
from: this.__getInfo(this.__prevSelected),
to: b
}), this) : this
},
getIndexByButton: function(b) {
return a.inArray(b, this.__btns)
},
appendButtonTo: function(b) {
a.each(this.__btns, function(a, c) {
c.appendTo(b)
})
},
appendPanelTo: function(b) {
a.each(this.__panels, function(a, c) {
c.appendTo(b)
})
},
__render: function() {
this.callBase(), this.__btnWrap = a(".fui-tabs-button-wrap", this.__element)[0], this.__panelWrap = a(".fui-tabs-panel-wrap", this.__element)[0], this.__renderByOptions(this.__options), this.__selectItem(this.__options.selected)
},
__renderByOptions: function(b) {
var c = this,
f = [],
g = this.__btns,
h = this.__panels,
i = this.__btnWrap,
j = this.__panelWrap;
return a.each(b.buttons, function(a, k) {
var l = null,
m = null;
"object" != typeof k && (k = {
label: k
}), l = new d(k), l.on("click", function() {
c.select(c.getIndexByButton(this))
}), k = b.panels[a] || {}, k.hide = !0, m = new e(k), g.push(l), h.push(m), f.push({
button: l,
panel: m
}), l.appendTo(i), m.appendTo(j)
}), f
},
__initOptions: function() {
this.callBase(), this.widgetName = "Tabs", this.__tpl = c, this.__btns = [], this.__panels = [], this.__prevSelected = -1, this.__selected = -1, this.__btnWrap = null, this.__panelWrap = null, null === this.__options.panels && (this.__options.panels = [], this.__options.panels.length = this.__options.buttons.length)
},
__selectItem: function(a) {
var c = this.getButton(a),
d = this.getButton(this.__selected),
e = b.classPrefix + "selected";
return c ? (d && (d.removeClass(e), this.getPanel(this.__selected).hide()), c.addClass(e), this.getPanel(a).show(), this.__prevSelected = this.__selected, this.__selected = a, !0) : !1
},
__getInfo: function(a) {
return {
index: a,
button: this.getButton(a),
panel: this.getPanel(a)
}
}
})
}
}, _p[59] = {
value: function() {
var a = _p.r(4),
b = _p.r(12);
return _p.r(13).createClass("ToggleButton", {
base: _p.r(37),
constructor: function(b) {
var c = {
pressed: !1
};
b = a.extend({}, c, b), this.callBase(b)
},
isPressed: function() {
return this.__state
},
press: function() {
var c = b.classPrefix + "button-pressed";
a(this.__element).addClass(c), this.__updateState(!0)
},
bounce: function() {
var c = b.classPrefix + "button-pressed";
a(this.__element).removeClass(c), this.__updateState(!1)
},
toggle: function() {
this.__state ? this.bounce() : this.press()
},
__initOptions: function() {
this.callBase(), this.widgetName = "ToggleButton", this.__state = !1
},
__render: function() {
return this.callBase(), a(this.__element).addClass(b.classPrefix + "toggle-button"), this.__initButtonState(), this
},
__initButtonState: function() {
this.__options.pressed && (a(this.__element).addClass(b.classPrefix + "button-pressed"), this.__state = !0)
},
__initEvent: function() {
this.callBase(), this.on("click", function() {
this.toggle()
})
},
__updateState: function(a) {
a = !! a, this.__state = a, this.trigger("change", a, !a)
}
})
}
}, _p[60] = {
value: function() {
function a() {
return b + ++c
}
var b = "_fui_",
c = 0,
d = _p.r(12),
e = _p.r(11),
f = _p.r(4),
g = _p.r(13),
h = _p.r(13).createClass("Widget", {
constructor: function(a) {
var b = {
id: null,
className: "",
disabled: !1,
preventDefault: !1,
text: "",
value: null,
hide: !1,
width: null,
height: null
};
this.__widgetType = "widget", this.__tpl = "", this.__compiledTpl = "", this.__options = {}, this.__element = null, this.__allow_focus = !! d.allowFocus, this.widgetName = "Widget", this.__extendOptions(b, a), this.__initOptions(), this.__render(), this.__initEvent(), this.__initWidgets && this.__initWidgets()
},
getId: function() {
return this.id
},
getValue: function() {
return this.__options.value
},
getOptions: function() {
return this.__options
},
setValue: function(a) {
return this.__options.value = a, this
},
show: function() {
return this.__show(), this
},
hide: function() {
return this.__hide(), this
},
addClass: function(a) {
return f(this.__element).addClass(a), this
},
removeClass: function(a) {
return f(this.__element).removeClass(a), this
},
setStyle: function() {
return f.fn.css.apply(f(this.__element), arguments), this
},
getStyle: function() {
return f.fn.css.apply(f(this.__element), arguments)
},
isDisabled: function() {
return this.__options.disabled
},
enable: function() {
return this.__options.disabled = !1, f(this.__element).removeClass(d.classPrefix + "disabled"), this
},
disable: function() {
return this.__options.disabled = !0, f(this.__element).addClass(d.classPrefix + "disabled"), this
},
cloneElement: function() {
return this.__element.cloneNode(!0)
},
getElement: function() {
return this.__element
},
appendTo: function(a) {
if (g.isElement(a)) a.appendChild(this.__element);
else {
if (!(a instanceof h)) throw new Error("TypeError: Widget.appendTo()");
a.__appendChild(this)
}
return this
},
remove: function() {
var a = this.__element.parentNode;
return a && a.removeChild(this.__element), this
},
off: function(a, b) {
return f(this.__element).off(b && b.__fui_listener), this
},
on: function(a, b) {
return this.__options.preventDefault || this.__on(a, b), this
},
__initOptions: function() {},
__render: function() {
var a = null,
b = this.__tpl,
c = this.__options,
h = null;
return this.id = this.__id(), e.__registerInstance(this), this.__compiledTpl = g.Tpl.compile(b, c), this.__element = f(this.__compiledTpl)[0], this.__element.setAttribute("id", this.id), a = f(this.__element), c.disabled && a.addClass(d.classPrefix + "disabled"), a.addClass(d.classPrefix + "widget"), h = c.className, h.length > 0 && a.addClass(f.isArray(h) ? h.join(" ") : h), this.__initBasicEnv(), c.hide && this.__hide(), c.style && this.setStyle(c.style), this
},
__appendChild: function(a) {
return this.__element.appendChild(a.getElement())
},
__initEvent: function() {
this.on("mousedown", function(a) {
var b = a.target.tagName.toLowerCase();
d.control[b] || this.__allowFocus() ? a.stopPropagation() : a.preventDefault()
})
},
__on: function(a, b) {
var c = this;
return b.__fui_listener = function(a, d) {
for (var e = [], f = 0, g = arguments.length; g > f; f++) 1 !== f && e.push(arguments[f]);
return a.widget = d, c.isDisabled() ? void 0 : b.apply(c, e)
}, f(this.__element).on(a, b.__fui_listener), this
},
trigger: function() {
return this.__options.preventDefault || this.__trigger.apply(this, arguments), this
},
__allowShowTitle: function() {
return !0
},
__allowFocus: function() {
return !!this.__allow_focus
},
__trigger: function(a) {
var b = [].slice.call(arguments, 1);
return f(this.__element).trigger(a, [this].concat(b)), this
},
__triggerHandler: function(a) {
var b = [this].concat([].slice.call(arguments, 1));
return f(this.__element).triggerHandler(a, b)
},
__fire: function(a, b) {
var c = {
cancel: !1
};
return /^(before|after)/.test(a) ? this : (this.__trigger("before" + a, c), c.cancel === !0 ? this : (c = b.call(this, a), this.__trigger(a), this.__trigger("after" + a, c), this))
},
__extendOptions: function() {
var a = [{},
this.__options],
b = [!0];
a = a.concat([].slice.call(arguments, 0));
for (var c = 0, d = a.length; d > c; c++)"string" != typeof a[c] && b.push(a[c]);
this.__options = f.extend.apply(f, b)
},
__hide: function() {
f(this.__element).addClass(d.classPrefix + "hide")
},
__show: function() {
f(this.__element).removeClass(d.classPrefix + "hide")
},
__initBasicEnv: function() {
this.__options.text && this.__allowShowTitle() && this.__element.setAttribute("title", this.__options.text), this.__options.width && (this.__element.style.width = this.__options.width + "px"), this.__options.height && (this.__element.style.height = this.__options.height + "px"), this.widgetName && this.__element.setAttribute("rule", this.widgetName)
},
__id: function() {
return this.__options.id || a()
}
});
return h
}
}, _p[61] = {
value: function() {
_p.r(1), _p.r(2)
}
};
var moduleMapping = {
"fui.export": 61
};
use("fui.export")
}();