import Ember from 'ember';
const { computed } = Ember;
import autosize from 'autosize';


export default Ember.Component.extend({
	value: null,
	didInsertElement(){
		this._super(...arguments);
		autosize(this.element.querySelector('textarea'));
	},
	didUpdate(){
		this._super(...arguments);
		autosize.update(this.element.querySelector('textarea'));
	},
	willDestroyElement(){
		this._super(...arguments);
		autosize.destroy(this.element.querySelector('textarea'));
	},
	shouldObscure: computed("isMasked", "isFocused", "value", function(){
		if(this.get('value') === "" ){
			return false;
		}
		if(this.get('isFocused') === true){
			return false;
		}
		return this.get('isMasked');
	}),
	displayValue: computed("shouldObscure", function(){
		if(this.get("shouldObscure")){
			return "■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■";
		}
		else{
			return this.get('value');
		}
	}),
	isMasked: true,
	isFocused: false,
	displayOnly: false,
	onKeyDown(){},
	onChange(){},
	actions: {
		toggleMask(){
			this.toggleProperty('isMasked');
		},
		updateValue(e){
			this.set('value', e.target.value);
			this.onChange();
		},
	}
});
