mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-14 18:52:05 +03:00
eb1cf51bf6
no issue - `this.attrs` is a glimmer-component thing (which doesn't exist in Ghost yet), to avoid confusion we should avoid using it - https://locks.svbtle.com/to-attrs-or-not-to-attrs - https://github.com/cibernox/ember-power-select/issues/233#issuecomment-170352572
33 lines
836 B
JavaScript
33 lines
836 B
JavaScript
import Ember from 'ember';
|
|
import TextInputMixin from 'ghost/mixins/text-input';
|
|
import boundOneWay from 'ghost/utils/bound-one-way';
|
|
import {formatDate} from 'ghost/utils/date-formatting';
|
|
|
|
const {Component} = Ember;
|
|
|
|
export default Component.extend(TextInputMixin, {
|
|
tagName: 'span',
|
|
classNames: 'input-icon icon-calendar',
|
|
|
|
datetime: boundOneWay('value'),
|
|
inputClass: null,
|
|
inputId: null,
|
|
inputName: null,
|
|
|
|
didReceiveAttrs() {
|
|
let datetime = this.get('datetime') || moment();
|
|
|
|
if (!this.get('update')) {
|
|
throw new Error(`You must provide an \`update\` action to \`{{${this.templateName}}}\`.`);
|
|
}
|
|
|
|
this.set('datetime', formatDate(datetime));
|
|
},
|
|
|
|
focusOut() {
|
|
let datetime = this.get('datetime');
|
|
|
|
this.get('update')(datetime);
|
|
}
|
|
});
|