ember-bootstrap-datepicker
Version:
Datepicker component for Ember CLI based on bootstrap-datepicker. It doesn't have any external dependency except bootstrap-datepicker, supports popup and inline modes.
68 lines (55 loc) • 1.26 kB
JavaScript
import { isEmpty } from '@ember/utils';
import Component from '@ember/component';
import DatepickerSupport from 'ember-bootstrap-datepicker/components/datepicker-support';
import $ from 'jquery';
export default Component.extend(DatepickerSupport, {
instrumentDisplay: '{{input type="text"}}',
classNames: ['ember-text-field'],
tagName: 'input',
attributeBindings: [
'accesskey',
'autocomplete',
'autofocus',
'contenteditable',
'contextmenu',
'dir',
'disabled',
'draggable',
'dropzone',
'form',
'hidden',
'id',
'lang',
'list',
'max',
'min',
'name',
'placeholder',
'readonly',
'required',
'spellcheck',
'step',
'tabindex',
'title',
'translate',
'type'
],
type: 'text',
forceParse: true,
_forceParse() {
if (!this.get('forceParse')) {
return;
}
let date = null,
format = this.get('format');
if (!isEmpty(this.element.value) && !isEmpty(format)) {
let dpg = $.fn.datepicker.DPGlobal;
date = dpg.parseDate(this.element.value, dpg.parseFormat(format));
} else {
date = Date.parse(this.element.value);
}
if (!isNaN(date)) {
this.set('value', new Date(date));
}
}
});