Sha256: e68472acd14d7d434b85e48dfc8c17b11b3892d2adb089fca688bba6af08d27d

Contents?: true

Size: 1000 Bytes

Versions: 1

Compression:

Stored size: 1000 Bytes

Contents

import Ember from 'ember';
import Component from '@ember/component';
import { computed } from '@ember/object';
import layout from '../templates/components/bsy-input';

const { generateGuid } = Ember;

const BsyInputComponent = Component.extend({
  layout,
  tagName: 'div',
  classNames: 'form-group',
  type: 'text',
  readonly: false,
  placeholder: '',
  disabled: false,
  classNameBindings: ['value:filled', 'icon:has-icon', 'formGroupSize'],
  size: null, // sm, lg

  inputClassNames: computed('size', function() {
    return this.size ? `form-control input-${this.size}` : 'form-control';
  }),

  iconSize: computed('size', function() {
    return this.size ? `icon--${this.size}` : '';
  }),

  formGroupSize: computed('size', function() {
    return this.size ? `form-group--${this.size}` : '';
  }),

  inputId: computed(function() {
    return generateGuid();
  }),

  update() {}
});

BsyInputComponent.reopenClass({
  positionalParams: ['value']
});

export default BsyInputComponent;

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bootstrap-bookingsync-sass-2.0.0 addon/components/bsy-input.js