nitpick: maybe take reverse condition to avoid excessive nesting. something like:

`if (!selector) return this.make([])`