'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

var matcher = require('../matcher.js');

var find = Array.prototype.find;

function childFind(match) {
  return function() {
    return find.call(this.children, match);
  };
}

function childFirst() {
  return this.firstElementChild;
}

function selection_selectChild(match) {
  return this.select(match == null ? childFirst
      : childFind(typeof match === "function" ? match : matcher.childMatcher(match)));
}

exports.default = selection_selectChild;
