aboutsummaryrefslogtreecommitdiff
path: root/node_modules/is-generator-function
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2018-11-08 00:38:48 +0800
committerruki <waruqi@gmail.com>2018-11-07 21:53:09 +0800
commit26105034da4fcce7ac883c899d781f016559310d (patch)
treec459a5dc4e3aa0972d9919033ece511ce76dd129 /node_modules/is-generator-function
parent2c77f00f1a7ecb6c8192f9c16d3b2001b254a107 (diff)
downloadxmake-docs-26105034da4fcce7ac883c899d781f016559310d.tar.gz
xmake-docs-26105034da4fcce7ac883c899d781f016559310d.zip
switch to vuepress
Diffstat (limited to 'node_modules/is-generator-function')
-rw-r--r--node_modules/is-generator-function/.editorconfig20
-rw-r--r--node_modules/is-generator-function/.eslintrc9
-rw-r--r--node_modules/is-generator-function/.jscs.json176
-rw-r--r--node_modules/is-generator-function/.nvmrc1
-rw-r--r--node_modules/is-generator-function/.travis.yml191
-rw-r--r--node_modules/is-generator-function/CHANGELOG.md44
-rw-r--r--node_modules/is-generator-function/LICENSE20
-rw-r--r--node_modules/is-generator-function/Makefile61
-rw-r--r--node_modules/is-generator-function/README.md42
-rw-r--r--node_modules/is-generator-function/index.js32
-rw-r--r--node_modules/is-generator-function/package.json73
-rw-r--r--node_modules/is-generator-function/test/.eslintrc5
-rw-r--r--node_modules/is-generator-function/test/corejs.js5
-rw-r--r--node_modules/is-generator-function/test/index.js94
-rw-r--r--node_modules/is-generator-function/test/uglified.js8
15 files changed, 781 insertions, 0 deletions
diff --git a/node_modules/is-generator-function/.editorconfig b/node_modules/is-generator-function/.editorconfig
new file mode 100644
index 00000000..ac29adef
--- /dev/null
+++ b/node_modules/is-generator-function/.editorconfig
@@ -0,0 +1,20 @@
+root = true
+
+[*]
+indent_style = tab
+indent_size = 4
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+max_line_length = 120
+
+[CHANGELOG.md]
+indent_style = space
+indent_size = 2
+
+[*.json]
+max_line_length = off
+
+[Makefile]
+max_line_length = off
diff --git a/node_modules/is-generator-function/.eslintrc b/node_modules/is-generator-function/.eslintrc
new file mode 100644
index 00000000..484e4d71
--- /dev/null
+++ b/node_modules/is-generator-function/.eslintrc
@@ -0,0 +1,9 @@
+{
+ "root": true,
+
+ "extends": "@ljharb",
+
+ "rules": {
+ "no-new-func": [1]
+ }
+}
diff --git a/node_modules/is-generator-function/.jscs.json b/node_modules/is-generator-function/.jscs.json
new file mode 100644
index 00000000..c62f2c19
--- /dev/null
+++ b/node_modules/is-generator-function/.jscs.json
@@ -0,0 +1,176 @@
+{
+ "es3": true,
+
+ "additionalRules": [],
+
+ "requireSemicolons": true,
+
+ "disallowMultipleSpaces": true,
+
+ "disallowIdentifierNames": [],
+
+ "requireCurlyBraces": {
+ "allExcept": [],
+ "keywords": ["if", "else", "for", "while", "do", "try", "catch"]
+ },
+
+ "requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch", "function"],
+
+ "disallowSpaceAfterKeywords": [],
+
+ "disallowSpaceBeforeComma": true,
+ "disallowSpaceAfterComma": false,
+ "disallowSpaceBeforeSemicolon": true,
+
+ "disallowNodeTypes": [
+ "DebuggerStatement",
+ "ForInStatement",
+ "LabeledStatement",
+ "SwitchCase",
+ "SwitchStatement",
+ "WithStatement"
+ ],
+
+ "requireObjectKeysOnNewLine": { "allExcept": ["sameLine"] },
+
+ "requireSpacesInAnonymousFunctionExpression": { "beforeOpeningRoundBrace": true, "beforeOpeningCurlyBrace": true },
+ "requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true },
+ "disallowSpacesInNamedFunctionExpression": { "beforeOpeningRoundBrace": true },
+ "requireSpacesInFunctionDeclaration": { "beforeOpeningCurlyBrace": true },
+ "disallowSpacesInFunctionDeclaration": { "beforeOpeningRoundBrace": true },
+
+ "requireSpaceBetweenArguments": true,
+
+ "disallowSpacesInsideParentheses": true,
+
+ "disallowSpacesInsideArrayBrackets": true,
+
+ "disallowQuotedKeysInObjects": { "allExcept": ["reserved"] },
+
+ "disallowSpaceAfterObjectKeys": true,
+
+ "requireCommaBeforeLineBreak": true,
+
+ "disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"],
+ "requireSpaceAfterPrefixUnaryOperators": [],
+
+ "disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
+ "requireSpaceBeforePostfixUnaryOperators": [],
+
+ "disallowSpaceBeforeBinaryOperators": [],
+ "requireSpaceBeforeBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
+
+ "requireSpaceAfterBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
+ "disallowSpaceAfterBinaryOperators": [],
+
+ "disallowImplicitTypeConversion": ["binary", "string"],
+
+ "disallowKeywords": ["with", "eval"],
+
+ "requireKeywordsOnNewLine": [],
+ "disallowKeywordsOnNewLine": ["else"],
+
+ "requireLineFeedAtFileEnd": true,
+
+ "disallowTrailingWhitespace": true,
+
+ "disallowTrailingComma": true,
+
+ "excludeFiles": ["node_modules/**", "vendor/**"],
+
+ "disallowMultipleLineStrings": true,
+
+ "requireDotNotation": { "allExcept": ["keywords"] },
+
+ "requireParenthesesAroundIIFE": true,
+
+ "validateLineBreaks": "LF",
+
+ "validateQuoteMarks": {
+ "escape": true,
+ "mark": "'"
+ },
+
+ "disallowOperatorBeforeLineBreak": [],
+
+ "requireSpaceBeforeKeywords": [
+ "do",
+ "for",
+ "if",
+ "else",
+ "switch",
+ "case",
+ "try",
+ "catch",
+ "finally",
+ "while",
+ "with",
+ "return"
+ ],
+
+ "validateAlignedFunctionParameters": {
+ "lineBreakAfterOpeningBraces": true,
+ "lineBreakBeforeClosingBraces": true
+ },
+
+ "requirePaddingNewLinesBeforeExport": true,
+
+ "validateNewlineAfterArrayElements": {
+ "maximum": 2
+ },
+
+ "requirePaddingNewLinesAfterUseStrict": true,
+
+ "disallowArrowFunctions": true,
+
+ "disallowMultiLineTernary": true,
+
+ "validateOrderInObjectKeys": "asc-insensitive",
+
+ "disallowIdenticalDestructuringNames": true,
+
+ "disallowNestedTernaries": { "maxLevel": 1 },
+
+ "requireSpaceAfterComma": { "allExcept": ["trailing"] },
+ "requireAlignedMultilineParams": false,
+
+ "requireSpacesInGenerator": {
+ "afterStar": true
+ },
+
+ "disallowSpacesInGenerator": {
+ "beforeStar": true
+ },
+
+ "disallowVar": false,
+
+ "requireArrayDestructuring": false,
+
+ "requireEnhancedObjectLiterals": false,
+
+ "requireObjectDestructuring": false,
+
+ "requireEarlyReturn": false,
+
+ "requireCapitalizedConstructorsNew": {
+ "allExcept": ["Function", "String", "Object", "Symbol", "Number", "Date", "RegExp", "Error", "Boolean", "Array"]
+ },
+
+ "requireImportAlphabetized": false,
+
+ "requireSpaceBeforeObjectValues": true,
+ "requireSpaceBeforeDestructuredValues": true,
+
+ "disallowSpacesInsideTemplateStringPlaceholders": true,
+
+ "disallowArrayDestructuringReturn": false,
+
+ "requireNewlineBeforeSingleStatementsInIf": false,
+
+ "disallowUnusedVariables": true,
+
+ "requireSpacesInsideImportedObjectBraces": true,
+
+ "requireUseStrict": true
+}
+
diff --git a/node_modules/is-generator-function/.nvmrc b/node_modules/is-generator-function/.nvmrc
new file mode 100644
index 00000000..64f5a0a6
--- /dev/null
+++ b/node_modules/is-generator-function/.nvmrc
@@ -0,0 +1 @@
+node
diff --git a/node_modules/is-generator-function/.travis.yml b/node_modules/is-generator-function/.travis.yml
new file mode 100644
index 00000000..7ead9e94
--- /dev/null
+++ b/node_modules/is-generator-function/.travis.yml
@@ -0,0 +1,191 @@
+language: node_js
+os:
+ - linux
+node_js:
+ - "9.3"
+ - "8.9"
+ - "7.10"
+ - "6.12"
+ - "5.12"
+ - "4.8"
+ - "iojs-v3.3"
+ - "iojs-v2.5"
+ - "iojs-v1.8"
+ - "0.12"
+ - "0.10"
+ - "0.8"
+before_install:
+ - 'nvm install-latest-npm'
+install:
+ - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ] || [ "${TRAVIS_NODE_VERSION}" = "0.9" ]; then nvm install --latest-npm 0.8 && npm install && nvm use "${TRAVIS_NODE_VERSION}"; else npm install; fi;'
+script:
+ - 'if [ -n "${PRETEST-}" ]; then npm run pretest ; fi'
+ - 'if [ -n "${POSTTEST-}" ]; then npm run posttest ; fi'
+ - 'if [ -n "${COVERAGE-}" ]; then npm run coverage ; fi'
+ - 'if [ -n "${TEST-}" ]; then npm run tests-only ; fi'
+sudo: false
+env:
+ - TEST=true
+matrix:
+ fast_finish: true
+ include:
+ - node_js: "lts/*"
+ env: PRETEST=true
+ - node_js: "lts/*"
+ env: POSTTEST=true
+ - node_js: "8"
+ env: COVERAGE=true
+ - node_js: "4"
+ env: COVERAGE=true
+ - node_js: "9.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "9.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "9.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.8"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.7"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.6"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.5"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.4"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.3"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "8.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.9"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.8"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.7"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.6"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.5"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.4"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.3"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "7.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.11"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.10"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.9"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.8"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.7"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.6"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.5"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.4"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.3"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "6.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.11"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.10"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.9"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.8"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.7"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.6"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.5"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.4"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.3"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "5.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.7"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.6"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.5"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.4"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.3"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "4.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v3.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v3.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v3.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v2.4"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v2.3"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v2.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v2.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v2.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.7"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.6"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.5"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.4"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.3"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.2"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.1"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "iojs-v1.0"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "0.11"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "0.9"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "0.6"
+ env: TEST=true ALLOW_FAILURE=true
+ - node_js: "0.4"
+ env: TEST=true ALLOW_FAILURE=true
+ allow_failures:
+ - os: osx
+ - env: TEST=true ALLOW_FAILURE=true
+ - env: COVERAGE=true
diff --git a/node_modules/is-generator-function/CHANGELOG.md b/node_modules/is-generator-function/CHANGELOG.md
new file mode 100644
index 00000000..983f5181
--- /dev/null
+++ b/node_modules/is-generator-function/CHANGELOG.md
@@ -0,0 +1,44 @@
+1.0.7 / 2017-12-27
+=================
+ * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `core-js`, `nsp`, `semver`, `tape`
+ * [Tests] up to `node` `v9.3`, `v8.9`, `v6.12`; pin included builds to LTS; use `nvm install-latest-npm`
+ * [Tests] run tests with uglify-register
+
+1.0.6 / 2016-12-20
+=================
+ * [Fix] fix `is-generator-function` in an env without native generators, with core-js (https://github.com/ljharb/is-equal/issues/33)
+
+1.0.5 / 2016-12-19
+=================
+ * [Fix] account for Safari 10 which reports the wrong toString on generator functions
+ * [Refactor] remove useless `Object#toString` check
+ * [Dev Deps] update everything; add linting
+ * [Tests] use pretest/posttest for linting/security
+ * [Tests] on all minors of node and io.js
+
+1.0.4 / 2015-03-03
+=================
+ * Add support for concise generator methods (#2) This is a patch change since concise methods are not in any actual released engines yet.
+ * Test on latest `io.js`
+ * Update `semver`
+
+1.0.3 / 2015-01-31
+=================
+ * Speed up travis-ci tests
+ * Run tests against a faked @@toStringTag
+ * Bail out early when typeof is not "function"
+
+1.0.2 / 2015-01-20
+=================
+ * Update `jscs`, `tape`
+ * Fix tests in newer v8 (and io.js) where Object#toString.call of a generator is GeneratorFunction, not Function
+
+1.0.1 / 2014-12-14
+=================
+ * Update `jscs`, `tape`
+ * Tweaks to README
+ * Use `make-generator-function` in tests
+
+1.0.0 / 2014-08-09
+=================
+ * Initial release.
diff --git a/node_modules/is-generator-function/LICENSE b/node_modules/is-generator-function/LICENSE
new file mode 100644
index 00000000..47b7b507
--- /dev/null
+++ b/node_modules/is-generator-function/LICENSE
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright (c) 2014 Jordan Harband
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/is-generator-function/Makefile b/node_modules/is-generator-function/Makefile
new file mode 100644
index 00000000..ccca6f1c
--- /dev/null
+++ b/node_modules/is-generator-function/Makefile
@@ -0,0 +1,61 @@
+# Since we rely on paths relative to the makefile location, abort if make isn't being run from there.
+$(if $(findstring /,$(MAKEFILE_LIST)),$(error Please only invoke this makefile from the directory it resides in))
+
+ # The files that need updating when incrementing the version number.
+VERSIONED_FILES := *.js */*.js *.json README*
+
+
+# Add the local npm packages' bin folder to the PATH, so that `make` can find them, when invoked directly.
+# Note that rather than using `$(npm bin)` the 'node_modules/.bin' path component is hard-coded, so that invocation works even from an environment
+# where npm is (temporarily) unavailable due to having deactivated an nvm instance loaded into the calling shell in order to avoid interference with tests.
+export PATH := $(shell printf '%s' "$$PWD/node_modules/.bin:$$PATH")
+UTILS := semver replace
+# Make sure that all required utilities can be located.
+UTIL_CHECK := $(or $(shell PATH="$(PATH)" which $(UTILS) >/dev/null && echo 'ok'),$(error Did you forget to run `npm install` after cloning the repo? At least one of the required supporting utilities not found: $(UTILS)))
+
+# Default target (by virtue of being the first non '.'-prefixed in the file).
+.PHONY: _no-target-specified
+_no-target-specified:
+ $(error Please specify the target to make - `make list` shows targets. Alternatively, use `npm test` to run the default tests; `npm run` shows all tests)
+
+# Lists all targets defined in this makefile.
+.PHONY: list
+list:
+ @$(MAKE) -pRrn : -f $(MAKEFILE_LIST) 2>/dev/null | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' | command grep -v -e '^[^[:alnum:]]' -e '^$@$$command ' | sort
+
+# All-tests target: invokes the specified test suites for ALL shells defined in $(SHELLS).
+.PHONY: test
+test:
+ @npm test
+
+.PHONY: _ensure-tag
+_ensure-tag:
+ifndef TAG
+ $(error Please invoke with `make TAG=<new-version> release`, where <new-version> is either an increment specifier (patch, minor, major, prepatch, preminor, premajor, prerelease), or an explicit major.minor.patch version number)
+endif
+
+CHANGELOG_ERROR = $(error No CHANGELOG specified)
+.PHONY: _ensure-changelog
+_ensure-changelog:
+ @ (git status -sb --porcelain | command grep -E '^( M|[MA] ) CHANGELOG.md' > /dev/null) || (echo no CHANGELOG.md specified && exit 2)
+
+# Ensures that the git workspace is clean.
+.PHONY: _ensure-clean
+_ensure-clean:
+ @[ -z "$$((git status --porcelain --untracked-files=no || echo err) | command grep -v 'CHANGELOG.md')" ] || { echo "Workspace is not clean; please commit changes first." >&2; exit 2; }
+
+# Makes a release; invoke with `make TAG=<versionOrIncrementSpec> release`.
+.PHONY: release
+release: _ensure-tag _ensure-changelog _ensure-clean
+ @old_ver=`git describe --abbrev=0 --tags --match 'v[0-9]*.[0-9]*.[0-9]*'` || { echo "Failed to determine current version." >&2; exit 1; }; old_ver=$${old_ver#v}; \
+ new_ver=`echo "$(TAG)" | sed 's/^v//'`; new_ver=$${new_ver:-patch}; \
+ if printf "$$new_ver" | command grep -q '^[0-9]'; then \
+ semver "$$new_ver" >/dev/null || { echo 'Invalid version number specified: $(TAG) - must be major.minor.patch' >&2; exit 2; }; \
+ semver -r "> $$old_ver" "$$new_ver" >/dev/null || { echo 'Invalid version number specified: $(TAG) - must be HIGHER than current one.' >&2; exit 2; } \
+ else \
+ new_ver=`semver -i "$$new_ver" "$$old_ver"` || { echo 'Invalid version-increment specifier: $(TAG)' >&2; exit 2; } \
+ fi; \
+ printf "=== Bumping version **$$old_ver** to **$$new_ver** before committing and tagging:\n=== TYPE 'proceed' TO PROCEED, anything else to abort: " && read response && [ "$$response" = 'proceed' ] || { echo 'Aborted.' >&2; exit 2; }; \
+ replace "$$old_ver" "$$new_ver" -- $(VERSIONED_FILES) && \
+ git commit -m "v$$new_ver" $(VERSIONED_FILES) CHANGELOG.md && \
+ git tag -a -m "v$$new_ver" "v$$new_ver"
diff --git a/node_modules/is-generator-function/README.md b/node_modules/is-generator-function/README.md
new file mode 100644
index 00000000..027facf4
--- /dev/null
+++ b/node_modules/is-generator-function/README.md
@@ -0,0 +1,42 @@
+# is-generator-function <sup>[![Version Badge][2]][1]</sup>
+
+[![Build Status][3]][4]
+[![dependency status][5]][6]
+[![dev dependency status][7]][8]
+[![License][license-image]][license-url]
+[![Downloads][downloads-image]][downloads-url]
+
+[![npm badge][11]][1]
+
+[![browser support][9]][10]
+
+Is this a native generator function?
+
+## Example
+
+```js
+var isGeneratorFunction = require('is-generator-function');
+assert(!isGeneratorFunction(function () {}));
+assert(!isGeneratorFunction(null));
+assert(isGeneratorFunction(function* () { yield 42; return Infinity; }));
+```
+
+## Tests
+Simply clone the repo, `npm install`, and run `npm test`
+
+[1]: https://npmjs.org/package/is-generator-function
+[2]: http://versionbadg.es/ljharb/is-generator-function.svg
+[3]: https://travis-ci.org/ljharb/is-generator-function.svg
+[4]: https://travis-ci.org/ljharb/is-generator-function
+[5]: https://david-dm.org/ljharb/is-generator-function.svg
+[6]: https://david-dm.org/ljharb/is-generator-function
+[7]: https://david-dm.org/ljharb/is-generator-function/dev-status.svg
+[8]: https://david-dm.org/ljharb/is-generator-function#info=devDependencies
+[9]: https://ci.testling.com/ljharb/is-generator-function.png
+[10]: https://ci.testling.com/ljharb/is-generator-function
+[11]: https://nodei.co/npm/is-generator-function.png?downloads=true&stars=true
+[license-image]: http://img.shields.io/npm/l/is-generator-function.svg
+[license-url]: LICENSE
+[downloads-image]: http://img.shields.io/npm/dm/is-generator-function.svg
+[downloads-url]: http://npm-stat.com/charts.html?package=is-generator-function
+
diff --git a/node_modules/is-generator-function/index.js b/node_modules/is-generator-function/index.js
new file mode 100644
index 00000000..306a299c
--- /dev/null
+++ b/node_modules/is-generator-function/index.js
@@ -0,0 +1,32 @@
+'use strict';
+
+var toStr = Object.prototype.toString;
+var fnToStr = Function.prototype.toString;
+var isFnRegex = /^\s*(?:function)?\*/;
+var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
+var getProto = Object.getPrototypeOf;
+var getGeneratorFunc = function () { // eslint-disable-line consistent-return
+ if (!hasToStringTag) {
+ return false;
+ }
+ try {
+ return Function('return function*() {}')();
+ } catch (e) {
+ }
+};
+var generatorFunc = getGeneratorFunc();
+var GeneratorFunction = generatorFunc ? getProto(generatorFunc) : {};
+
+module.exports = function isGeneratorFunction(fn) {
+ if (typeof fn !== 'function') {
+ return false;
+ }
+ if (isFnRegex.test(fnToStr.call(fn))) {
+ return true;
+ }
+ if (!hasToStringTag) {
+ var str = toStr.call(fn);
+ return str === '[object GeneratorFunction]';
+ }
+ return getProto(fn) === GeneratorFunction;
+};
diff --git a/node_modules/is-generator-function/package.json b/node_modules/is-generator-function/package.json
new file mode 100644
index 00000000..2ef6b2b8
--- /dev/null
+++ b/node_modules/is-generator-function/package.json
@@ -0,0 +1,73 @@
+{
+ "name": "is-generator-function",
+ "version": "1.0.7",
+ "description": "Determine if a function is a native generator function.",
+ "main": "index.js",
+ "scripts": {
+ "pretest": "npm run lint",
+ "test": "npm run tests-only",
+ "tests-only": "node --es-staging --harmony test",
+ "posttests-only": "npm run test:corejs && npm run test:uglified",
+ "test:corejs": "node test/corejs",
+ "test:uglified": "node test/uglified",
+ "posttest": "npm run security",
+ "coverage": "covert test",
+ "lint": "npm run jscs && npm run eslint",
+ "jscs": "jscs *.js */*.js",
+ "eslint": "eslint *.js */*.js",
+ "security": "nsp check"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/ljharb/is-generator-function.git"
+ },
+ "keywords": [
+ "generator",
+ "generator function",
+ "es6",
+ "es2015",
+ "yield",
+ "function",
+ "function*"
+ ],
+ "author": "Jordan Harband",
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/ljharb/is-generator-function/issues"
+ },
+ "dependencies": {},
+ "devDependencies": {
+ "@ljharb/eslint-config": "^12.2.1",
+ "core-js": "^2.5.3",
+ "covert": "^1.1.0",
+ "eslint": "^4.14.0",
+ "jscs": "^3.0.7",
+ "make-generator-function": "^1.1.0",
+ "nsp": "^3.1.0",
+ "replace": "^0.3.0",
+ "semver": "^5.4.1",
+ "tape": "^4.8.0",
+ "uglify-register": "^1.0.1"
+ },
+ "testling": {
+ "files": "test/index.js",
+ "browsers": [
+ "iexplore/6.0..latest",
+ "firefox/3.0..6.0",
+ "firefox/15.0..latest",
+ "firefox/nightly",
+ "chrome/4.0..10.0",
+ "chrome/20.0..latest",
+ "chrome/canary",
+ "opera/10.0..latest",
+ "opera/next",
+ "safari/4.0..latest",
+ "ipad/6.0..latest",
+ "iphone/6.0..latest",
+ "android-browser/4.2"
+ ]
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+}
diff --git a/node_modules/is-generator-function/test/.eslintrc b/node_modules/is-generator-function/test/.eslintrc
new file mode 100644
index 00000000..168cdf85
--- /dev/null
+++ b/node_modules/is-generator-function/test/.eslintrc
@@ -0,0 +1,5 @@
+{
+ "rules": {
+ "max-statements-per-line": [2, { "max": 2 }]
+ }
+}
diff --git a/node_modules/is-generator-function/test/corejs.js b/node_modules/is-generator-function/test/corejs.js
new file mode 100644
index 00000000..73f0c89c
--- /dev/null
+++ b/node_modules/is-generator-function/test/corejs.js
@@ -0,0 +1,5 @@
+'use strict';
+
+require('core-js');
+
+require('./');
diff --git a/node_modules/is-generator-function/test/index.js b/node_modules/is-generator-function/test/index.js
new file mode 100644
index 00000000..a33cc2b7
--- /dev/null
+++ b/node_modules/is-generator-function/test/index.js
@@ -0,0 +1,94 @@
+'use strict';
+
+/* globals window */
+
+var test = require('tape');
+var isGeneratorFunction = require('../index');
+var generatorFunc = require('make-generator-function');
+var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
+
+var forEach = function (arr, func) {
+ var i;
+ for (i = 0; i < arr.length; ++i) {
+ func(arr[i], i, arr);
+ }
+};
+
+test('returns false for non-functions', function (t) {
+ var nonFuncs = [
+ true,
+ false,
+ null,
+ undefined,
+ {},
+ [],
+ /a/g,
+ 'string',
+ 42,
+ new Date()
+ ];
+ t.plan(nonFuncs.length);
+ forEach(nonFuncs, function (nonFunc) {
+ t.notOk(isGeneratorFunction(nonFunc), nonFunc + ' is not a function');
+ });
+ t.end();
+});
+
+test('returns false for non-generator functions', function (t) {
+ var func = function () {};
+ t.notOk(isGeneratorFunction(func), 'anonymous function is not an generator function');
+
+ var namedFunc = function foo() {};
+ t.notOk(isGeneratorFunction(namedFunc), 'named function is not an generator function');
+
+ if (typeof window === 'undefined') {
+ t.skip('window.alert is not an generator function');
+ } else {
+ t.notOk(isGeneratorFunction(window.alert), 'window.alert is not an generator function');
+ }
+ t.end();
+});
+
+test('returns false for non-generator function with faked toString', function (t) {
+ var func = function () {};
+ func.toString = function () { return 'function* () { return "TOTALLY REAL I SWEAR!"; }'; };
+
+ t.notEqual(String(func), Function.prototype.toString.apply(func), 'faked toString is not real toString');
+ t.notOk(isGeneratorFunction(func), 'anonymous function with faked toString is not a generator function');
+ t.end();
+});
+
+test('returns false for non-generator function with faked @@toStringTag', { skip: !hasToStringTag }, function (t) {
+ var fakeGenFunction = {
+ toString: function () { return String(generatorFunc); },
+ valueOf: function () { return generatorFunc; }
+ };
+ fakeGenFunction[Symbol.toStringTag] = 'GeneratorFunction';
+ t.notOk(isGeneratorFunction(fakeGenFunction), 'fake GeneratorFunction with @@toStringTag "GeneratorFunction" is not a generator function');
+ t.end();
+});
+
+test('returns true for generator functions', function (t) {
+ if (generatorFunc) {
+ t.ok(isGeneratorFunction(generatorFunc), 'generator function is generator function');
+ } else {
+ t.skip('generator function is generator function - this environment does not support ES6 generator functions. Please run `node --harmony`, or use a supporting browser.');
+ }
+ t.end();
+});
+
+test('concise methods', { skip: !generatorFunc || !generatorFunc.concise }, function (t) {
+ t.test('returns true for concise generator methods', function (st) {
+ st.ok(isGeneratorFunction(generatorFunc.concise), 'concise generator method is generator function');
+ st.end();
+ });
+
+ t.test('returns false for concise non-generator methods', function (st) {
+ var conciseMethod = Function('return { concise() {} }.concise;')();
+ st.equal(typeof conciseMethod, 'function', 'assert: concise method exists');
+ st.notOk(isGeneratorFunction(conciseMethod), 'concise non-generator method is not generator function');
+ st.end();
+ });
+
+ t.end();
+});
diff --git a/node_modules/is-generator-function/test/uglified.js b/node_modules/is-generator-function/test/uglified.js
new file mode 100644
index 00000000..fd82b553
--- /dev/null
+++ b/node_modules/is-generator-function/test/uglified.js
@@ -0,0 +1,8 @@
+'use strict';
+
+require('uglify-register/api').register({
+ exclude: [/\/node_modules\//, /\/test\//],
+ uglify: { mangle: true }
+});
+
+require('./');