{"size": 584, "ext": "js", "max_stars_repo_path": "src/GenericMixin.js", "max_stars_repo_name": "catwell/elix", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "src/GenericMixin.js", "max_issues_repo_name": "catwell/elix", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "src/GenericMixin.js", "max_forks_repo_name": "catwell/elix", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 20.8571428571, "max_line_length": 89, "alphanum_fraction": 0.6198630137}
import ReactiveElement from './ReactiveElement.js'; // eslint-disable-line no-unused-vars


export default function GenericMixin(/** @type {Constructor<ReactiveElement>} */Base) {

  // The class prototype added by the mixin.
  return class Generic extends Base {

    get defaultState() {
      return Object.assign(super.defaultState, {
        generic: true
      });
    }

    get generic() {
      return this.state.generic;
    }
    set generic(generic) {
      const parsed = String(generic) === 'true';
      this.setState({
        generic: parsed
      });
    }

  };

}
