initial commit
This commit is contained in:
+82
@@ -0,0 +1,82 @@
|
||||
(function (global, factory) {
|
||||
if (typeof define === "function" && define.amd) {
|
||||
define('/Plugin/loading-button', ['exports', 'Plugin'], factory);
|
||||
} else if (typeof exports !== "undefined") {
|
||||
factory(exports, require('Plugin'));
|
||||
} else {
|
||||
var mod = {
|
||||
exports: {}
|
||||
};
|
||||
factory(mod.exports, global.Plugin);
|
||||
global.PluginLoadingButton = mod.exports;
|
||||
}
|
||||
})(this, function (exports, _Plugin2) {
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
||||
var _Plugin3 = babelHelpers.interopRequireDefault(_Plugin2);
|
||||
|
||||
var NAME = 'loadingButton';
|
||||
|
||||
var LoadingButton = function (_Plugin) {
|
||||
babelHelpers.inherits(LoadingButton, _Plugin);
|
||||
|
||||
function LoadingButton() {
|
||||
babelHelpers.classCallCheck(this, LoadingButton);
|
||||
return babelHelpers.possibleConstructorReturn(this, (LoadingButton.__proto__ || Object.getPrototypeOf(LoadingButton)).apply(this, arguments));
|
||||
}
|
||||
|
||||
babelHelpers.createClass(LoadingButton, [{
|
||||
key: 'getName',
|
||||
value: function getName() {
|
||||
return NAME;
|
||||
}
|
||||
}, {
|
||||
key: 'render',
|
||||
value: function render() {
|
||||
this.text = this.$el.text();
|
||||
this.$el.data('loadingButtonApi', this);
|
||||
}
|
||||
}, {
|
||||
key: 'loading',
|
||||
value: function loading() {
|
||||
var $el = this.$el,
|
||||
i = this.options.time,
|
||||
loadingText = this.options.loadingText,
|
||||
opacity = this.options.opacity;
|
||||
|
||||
$el.text(loadingText + '(' + i + ')').css('opacity', opacity);
|
||||
|
||||
var timeout = setInterval(function () {
|
||||
$el.text(loadingText + '(' + --i + ')');
|
||||
if (i === 0) {
|
||||
clearInterval(timeout);
|
||||
$el.text(text).css('opacity', '1');
|
||||
}
|
||||
}, 1000);
|
||||
}
|
||||
}], [{
|
||||
key: 'api',
|
||||
value: function api() {
|
||||
return 'click|loading';
|
||||
}
|
||||
}, {
|
||||
key: 'getDefaults',
|
||||
value: function getDefaults() {
|
||||
return {
|
||||
loadingText: 'Loading',
|
||||
time: 20,
|
||||
opacity: '0.6'
|
||||
};
|
||||
}
|
||||
}]);
|
||||
return LoadingButton;
|
||||
}(_Plugin3.default);
|
||||
|
||||
_Plugin3.default.register(NAME, LoadingButton);
|
||||
|
||||
exports.default = LoadingButton;
|
||||
});
|
||||
Reference in New Issue
Block a user