aboutsummaryrefslogtreecommitdiff
path: root/node_modules/is-natural-number/index.jsnext.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/is-natural-number/index.jsnext.js')
-rw-r--r--node_modules/is-natural-number/index.jsnext.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/node_modules/is-natural-number/index.jsnext.js b/node_modules/is-natural-number/index.jsnext.js
new file mode 100644
index 0000000..f018bd4
--- /dev/null
+++ b/node_modules/is-natural-number/index.jsnext.js
@@ -0,0 +1,29 @@
+/*!
+ * is-natural-number.js | MIT (c) Shinnosuke Watanabe
+ * https://github.com/shinnn/is-natural-number.js
+*/
+export default function isNaturalNumber(val, option) {
+ if (option) {
+ if (typeof option !== 'object') {
+ throw new TypeError(
+ String(option) +
+ ' is not an object. Expected an object that has boolean `includeZero` property.'
+ );
+ }
+
+ if ('includeZero' in option) {
+ if (typeof option.includeZero !== 'boolean') {
+ throw new TypeError(
+ String(option.includeZero) +
+ ' is neither true nor false. `includeZero` option must be a Boolean value.'
+ );
+ }
+
+ if (option.includeZero && val === 0) {
+ return true;
+ }
+ }
+ }
+
+ return Number.isSafeInteger(val) && val >= 1;
+}