@narmafzam/jalali-datepicker
Version:
just a jalali-datepicker
51 lines (47 loc) • 1.3 kB
JavaScript
class API {
constructor (model) {
this.model = model;
}
get options () {
return this.model.options;
}
set options (inputOptions) {
let opt = $.extend(true, this.model.options, inputOptions);
this.model.view.destroy();
this.model.components(this.model.inputElement, opt);
}
show () {
this.model.view.show();
this.model.options.onShow(this.model);
return this.model;
}
getState () {
return this.model.state;
}
hide () {
this.model.view.hide();
this.model.options.onHide(this.model);
return this.model;
}
toggle () {
this.model.view.toggle();
this.model.options.onToggle(this.model);
return this.model;
}
destroy () {
if(this.model){
this.model.view.destroy();
this.model.options.onDestroy(this.model);
delete this.model;
}
}
setDate (unix) {
this.model.state.setSelectedDateTime('unix', unix);
this.model.state.setViewDateTime('unix', unix);
this.model.state.setSelectedDateTime('unix', unix);
this.model.view.render(this.view);
this.model.options.onSet(unix);
return this.model;
}
}
module.exports = API;