generate-ip 2.3.1 โ†’ 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -3,9 +3,9 @@
3
3
  ### Randomly generate, format, and validate IPv4 + IPv6 + MAC addresses.
4
4
 
5
5
  <a href="#%EF%B8%8F-mit-license"><img height=31 src="https://img.shields.io/badge/License-MIT-orange.svg?logo=internetarchive&logoColor=white&labelColor=464646&style=for-the-badge"></a>
6
- <a href="https://github.com/adamlui/js-utils/releases/tag/generate-ip-2.3.1"><img height=31 src="https://img.shields.io/badge/Latest_Build-2.3.1-44cc11.svg?logo=icinga&logoColor=white&labelColor=464646&style=for-the-badge"></a>
6
+ <a href="https://github.com/adamlui/js-utils/releases/tag/generate-ip-2.4.1"><img height=31 src="https://img.shields.io/badge/Latest_Build-2.4.1-44cc11.svg?logo=icinga&logoColor=white&labelColor=464646&style=for-the-badge"></a>
7
7
  <a href="https://www.npmjs.com/package/generate-ip?activeTab=code"><img height=31 src="https://img.shields.io/npm/unpacked-size/generate-ip?style=for-the-badge&logo=ebox&logoColor=white&labelColor=464646&color=blue"></a>
8
- <a href="https://github.com/adamlui/js-utils/blob/generate-ip-2.3.1/generate-ip/dist/generate-ip.min.js"><img height=31 src="https://img.shields.io/github/size/adamlui/js-utils/generate-ip/dist/generate-ip.min.js?branch=generate-ip-2.3.1&label=Minified%20Size&logo=databricks&logoColor=white&labelColor=464646&color=ff69b4&style=for-the-badge"></a>
8
+ <a href="https://github.com/adamlui/js-utils/blob/generate-ip-2.4.1/generate-ip/dist/generate-ip.min.js"><img height=31 src="https://img.shields.io/github/size/adamlui/js-utils/generate-ip/dist/generate-ip.min.js?branch=generate-ip-2.4.1&label=Minified%20Size&logo=databricks&logoColor=white&labelColor=464646&color=ff69b4&style=for-the-badge"></a>
9
9
  <a href="https://sonarcloud.io/component_measures?metric=new_vulnerabilities&id=adamlui_js-utils:generate-ip/src/generate-ip.js"><img height=31 src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fsonarcloud.io%2Fapi%2Fmeasures%2Fcomponent%3Fcomponent%3Dadamlui_js-utils%3Agenerate-ip%2Fsrc%2Fgenerate-ip.js%26metricKeys%3Dvulnerabilities&query=%24.component.measures.0.value&style=for-the-badge&logo=sonarcloud&logoColor=white&labelColor=464646&label=Vulnerabilities&color=gold"></a>
10
10
  <a href="https://github.com/toolleeo/cli-apps#networking"><img height=31 src="https://img.shields.io/badge/Mentioned_in-Awesome-c4a2bd?logo=awesomelists&logoColor=white&labelColor=464646&style=for-the-badge"></a>
11
11
  <a href="https://www.jsdelivr.com/package/npm/generate-ip?tab=stats"><img height=31 src="https://img.shields.io/jsdelivr/npm/hm/generate-ip?style=for-the-badge&logo=jsdelivr&logoColor=white&label=jsDelivr%20Hits&labelColor=464646&color=49c5d8"></a>
@@ -72,14 +72,14 @@ const { ipv4, ipv6, mac } = require('generate-ip');
72
72
  #### <> HTML script tag:
73
73
 
74
74
  ```html
75
- <script src="https://cdn.jsdelivr.net/npm/generate-ip@2.3.1/dist/generate-ip.min.js"></script>
75
+ <script src="https://cdn.jsdelivr.net/npm/generate-ip@2.4.1/dist/generate-ip.min.js"></script>
76
76
  ```
77
77
 
78
78
  #### ES6:
79
79
 
80
80
  ```js
81
81
  (async () => {
82
- await import('https://cdn.jsdelivr.net/npm/generate-ip@2.3.1/dist/generate-ip.min.js');
82
+ await import('https://cdn.jsdelivr.net/npm/generate-ip@2.4.1/dist/generate-ip.min.js');
83
83
  // Your code here...
84
84
  })();
85
85
  ```
@@ -88,7 +88,7 @@ const { ipv4, ipv6, mac } = require('generate-ip');
88
88
 
89
89
  ```js
90
90
  ...
91
- // @require https://cdn.jsdelivr.net/npm/generate-ip@2.3.1/dist/generate-ip.min.js
91
+ // @require https://cdn.jsdelivr.net/npm/generate-ip@2.4.1/dist/generate-ip.min.js
92
92
  // ==/UserScript==
93
93
 
94
94
  // Your code here...
@@ -96,7 +96,7 @@ const { ipv4, ipv6, mac } = require('generate-ip');
96
96
 
97
97
  <br>
98
98
 
99
- ๐Ÿ“ **Note:** To always import the latest version (not recommended in production!) remove the `@2.3.1` version tag from the jsDelivr URL: `https://cdn.jsdelivr.net/npm/generate-ip/dist/generate-ip.min.js`
99
+ ๐Ÿ“ **Note:** To always import the latest version (not recommended in production!) remove the `@2.4.1` version tag from the jsDelivr URL: `https://cdn.jsdelivr.net/npm/generate-ip/dist/generate-ip.min.js`
100
100
 
101
101
  <br>
102
102
 
@@ -345,7 +345,7 @@ Sample output:
345
345
 
346
346
  <img src="https://media.generate-ip.org/images/screenshots/cli/generate-ip-cmd-output.png?7b16322">
347
347
 
348
- ๐Ÿ“ **Note:** To generate multiple IP addresses, pass `--qty=n` where `n` is the number of IPs to generate.
348
+ ๐Ÿ“ **Note:** To generate other address types, use `generate-ipv6` or `generate-mac`.
349
349
 
350
350
  #
351
351
 
@@ -356,6 +356,8 @@ Parameter options:
356
356
  --qty=n Generate n IP address(es).
357
357
 
358
358
  Boolean options:
359
+ -6, --ipv6 Generate IPv6 address.
360
+ -m, --mac Generate MAC address.
359
361
  -q, --quiet Suppress all logging except errors.
360
362
 
361
363
  Info commands:
@@ -383,7 +385,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
383
385
 
384
386
  ## ๐Ÿ› ๏ธ Related utilities
385
387
 
386
- ### [๐Ÿ”’ generate-pw](../generate-pw) <a href="https://github.com/toolleeo/cli-apps#password-managers"><img height=18 src="https://media.js-utils.com/images/badges/awesome/badge.svg?7b16322"></a>
388
+ ### [๐Ÿ”’ generate-pw](../generate-pw) &nbsp;<a href="https://github.com/toolleeo/cli-apps#password-managers"><img height=18 src="https://media.js-utils.com/images/badges/awesome/badge.svg?7b16322"></a>
387
389
 
388
390
  > Randomly generate, strengthen, and validate cryptographically-secure passwords.
389
391
  <br>[Install](https://docs.generatepw.org/#-installation) /
@@ -392,7 +394,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
392
394
  [CLI usage](https://docs.generatepw.org/#-command-line-usage) /
393
395
  [Discuss](https://github.js-utils.com/discussions)
394
396
 
395
- ### <picture><source media="(prefers-color-scheme: dark)" srcset="https://media.geolocatejs.org/images/icons/wire-globe/white/icon32.png?e735b99"><img height=22 src="https://media.geolocatejs.org/images/icons/wire-globe/black/icon32.png?e735b99"></picture> [geolocate](https://js-utils.com/geolocate)
397
+ ### <picture><source media="(prefers-color-scheme: dark)" srcset="https://media.geolocatejs.org/images/icons/wire-globe/white/icon32.png?e735b99"><img height=22 src="https://media.geolocatejs.org/images/icons/wire-globe/black/icon32.png?e735b99"></picture> [geolocate](https://js-utils.com/geolocate) &nbsp;<a href="https://github.com/toolleeo/cli-apps#networking"><img height=18 src="https://media.js-utils.com/images/badges/awesome/badge.svg?7b16322"></a>
396
398
 
397
399
  > Fetch IP geolocation data from the CLI.
398
400
  <br>[Install](https://docs.geolocatejs.org/#-installation) /
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--ipv4', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--ipv4', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--ipv6', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--mac', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
package/bin/generateip ADDED
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--ipv4', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--ipv4', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--ipv6', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+
3
+ require('child_process').spawnSync('node',
4
+ [require.resolve('generate-ip/dist/cli.min.js'), '--mac', ...process.argv.slice(2)],
5
+ { stdio: 'inherit' }
6
+ );
package/dist/cli.min.js CHANGED
@@ -4,17 +4,17 @@
4
4
  * Source: https://code.generate-ip.org
5
5
  * Documentation: https://docs.generate-ip.org
6
6
  */
7
- const pkgName="generate-ip",copyright="ยฉ 2024 Adam Lui & contributors under the MIT license.",cmdFormat="generate-ip [options|commands]",srcURL="https://code.generate-ip.org",docURL="https://docs.generate-ip.org/#-command-line-usage";(async()=>{const e=require(__dirname.match(/src/)?"./generate-ip":"./generate-ip.min")["ipv4"],r=require("fs"),n=require("path"),s=require("child_process")["execSync"],t="",i="",a="";let l="en";if("win32"==process.platform)try{l=s("(Get-Culture).TwoLetterISOLanguageName",{shell:"powershell",encoding:"utf-8"}).trim()}catch(e){}else{var c=process.env;l=(c.LANG||c.LANGUAGE||c.LC_ALL||c.LC_MESSAGES||c.LC_NAME||"en").split(".")[0]}let p={};var o,c=new Promise((t,i)=>{const a="https://cdn.jsdelivr.net/gh/adamlui/js-utils@8f3dcf8e2d67ebc399b5695bf6d08b9568d75f10/generate-ip/_locales/",e=(l?l.replace("-","_"):"en")+"/";let c=a+e+"messages.json",p=0;d(c).then(async function o(e){try{const r=await e.json(),n={};for(const s in r)"object"==typeof r[s]&&"message"in r[s]&&(n[s]=r[s].message);t(n)}catch(e){if(3==++p)return t({});d(c=l.includes("-")&&1==p?c.replace(/([^_]*)_[^/]*(\/.*)/,"$1$2"):a+"en/messages.json").then(o).catch(i)}}).catch(i)});try{p=await c}catch(e){}const m={},f={paramOptions:{qty:/^--?qu?a?n?ti?t?y(?:=.*|$)/},flags:{quietMode:/^--?q(?:uiet)?(?:-?mode)?$/},infoCmds:{help:/^--?h(?:elp)?$/,version:/^--?ve?r?s?i?o?n?$/}};if(process.argv.forEach(o=>{var e,r,n;o.startsWith("-")&&(e=Object.keys(f.paramOptions).find(e=>f.paramOptions[e].test(o)),n=Object.keys(f.flags).find(e=>f.flags[e].test(o)),r=Object.keys(f.infoCmds).find(e=>f.infoCmds[e].test(o)),n?m[n]=!0:e?(/=.+/.test(o)||(console.error(`
8
- ${i+(p.prefix_error||"ERROR")}: `+`Arg [--${o.replace(/-/g,"")}] `+`${p.error_noEqual||"requires '=' followed by a value"}.${t}`),u(),process.exit(1)),n=o.split("=")[1],m[e]=parseInt(n)||n):r||(console.error(`
9
- ${i+(p.prefix_error||"ERROR")}: `+`Arg [${o}] ${p.error_notRecognized||"not recognized"}.`),console.info(`
10
- ${""+(p.info_validArgs||"Valid arguments are below")}.`),h(["paramOptions","flags","infoCmds"]),process.exit(1)))}),m.qty&&(isNaN(m.qty)||m.qty<1)&&(console.error(`
11
- ${i+(p.prefix_error||"ERROR")}: [qty] `+`${p.error_nonPositiveNum||"argument can only be > 0"}.${t}`),u(),process.exit(1)),process.argv.some(e=>f.infoCmds.help.test(e)))h();else if(process.argv.some(e=>f.infoCmds.version.test(e))){c=s(`npm view ${pkgName} version`).toString().trim()||"none";let e,o=process.cwd();for(;"/"!=o;){var g=n.join(o,"package.json");if(r.existsSync(g)){g=require(g);e=(g.dependencies?.[pkgName]||g.devDependencies?.[pkgName])?.match(/(\d+\.\d+\.\d+)/)[0]||"none";break}o=n.dirname(o)}console.info(`
12
- ${p.prefix_globalVer||"Global version"}: `+c),console.info(`${p.prefix_localVer||"Local version"}: `+e)}else{c=e.generate({qty:m.qty||1,verbose:!m.quietMode});o=`
13
- ${p.info_copying||"Copying to clipboard"}...`,m.quietMode||console.info(o),o=Array.isArray(c)?c.join("\n"):c,"darwin"==process.platform?s(`printf "${o}" | pbcopy`):"linux"==process.platform?s(`printf "${o}" | xclip -selection clipboard`):"win32"==process.platform&&s(`Set-Clipboard -Value "${o}"`,{shell:"powershell"})}function d(n){return new Promise((r,e)=>{var o=n.match(/^([^:]+):\/\//)[1];/^https?$/.test(o)||e(new Error(`${p.error_invalidURL||"Invalid URL"}.`)),require(o).get(n,e=>{let o="";e.on("data",e=>o+=e),e.on("end",()=>r({json:()=>JSON.parse(o)}))}).on("error",e)})}function h(e=["header","usage","paramOptions","flags","infoCmds"]){var o=` ${pkgName}  `;const r={header:["\nโ”œ "+o+(p.appCopyright||copyright),o+(p.prefix_source||"Source")+": "+srcURL],usage:[`
14
- ${a}o ${p.helpSection_usage||"Usage"}:`," ยป "+cmdFormat+t],paramOptions:[`
15
- ${a}o ${p.helpSection_paramOptions||"Parameter options"}:`,` --qty=n ${p.optionDesc_qty||"Generate n IP address(es)"}.`],flags:[`
16
- ${a}o ${p.helpSection_flags||"Boolean options"}:`,` -q, --quiet ${p.optionDesc_quiet||"Suppress all logging except errors"}.`],infoCmds:[`
17
- ${a}o ${p.helpSection_infoCmds||"Info commands"}:`," -h, --help "+(p.optionDesc_help||"Display help screen."),` -v, --version ${p.optionDesc_version||"Show version number"}.`]};e.forEach(i=>{r[i]?.forEach(e=>{{var n=/header|usage/.test(i)?1:29;const s=process.stdout.columns||80,t=[],o=e.match(/\S+|\s+/g);let r="";o.forEach(e=>{var o=s-(0==t.length?0:n);r.length+"| ".length+e.length>o&&(t.push(0==t.length?r:r.trimStart()),r=""),r+=e}),t.push(0==t.length?r:r.trimStart()),t.forEach((e,o)=>console.info("| "+(0==o?e:" ".repeat(n)+e)))}})}),console.info(`
18
- ${p.info_moreHelp||"For more help"}, ${p.info_visit||"visit"}: `+a+docURL+t)}function u(){console.info(`
19
- ${p.info_moreHelp||"For more help"},`+` ${p.info_type||"type"} 'generate-ip --help'`+` ${p.info_or||"or"} ${p.info_visit||"visit"}
20
- `+a+docURL+t)}})();
7
+ const pkgName="generate-ip",copyright="ยฉ 2024 Adam Lui & contributors under the MIT license.",cmdFormat="generate-ip [options|commands]",srcURL="https://code.generate-ip.org",docURL="https://docs.generate-ip.org/#-command-line-usage";(async()=>{const{ipv4:e,ipv6:o,mac:r}=require(__dirname.match(/src/)?"./generate-ip":"./generate-ip.min"),s=require("fs"),n=require("path"),t=require("child_process")["execSync"],i="",a="",p="";let l="en";if("win32"==process.platform)try{l=t("(Get-Culture).TwoLetterISOLanguageName",{shell:"powershell",encoding:"utf-8"}).trim()}catch(e){}else{var c=process.env;l=(c.LANG||c.LANGUAGE||c.LC_ALL||c.LC_MESSAGES||c.LC_NAME||"en").split(".")[0]}let m={};var d,c=new Promise((t,i)=>{const a="https://cdn.jsdelivr.net/gh/adamlui/js-utils@e98e568ed7596053ad18fffd2efb50b416c386cb/generate-ip/_locales/",e=(l?l.replace("-","_"):"en")+"/";let p=a+e+"messages.json",c=0;u(p).then(async function o(e){try{const r=await e.json(),s={};for(const n in r)"object"==typeof r[n]&&"message"in r[n]&&(s[n]=r[n].message);t(s)}catch(e){if(3==++c)return t({});u(p=l.includes("-")&&1==c?p.replace(/([^_]*)_[^/]*(\/.*)/,"$1$2"):a+"en/messages.json").then(o).catch(i)}}).catch(i)});try{m=await c}catch(e){}const f={},g={paramOptions:{qty:/^--?qu?a?n?ti?t?y(?:=.*|$)/},flags:{ipv6mode:/^--?(?:ip)?v?6(?:-?mode)?$/,macMode:/^--?m(?:ac)?(?:-?mode)?$/,quietMode:/^--?q(?:uiet)?(?:-?mode)?$/},infoCmds:{help:/^--?h(?:elp)?$/,version:/^--?ve?r?s?i?o?n?$/}};if(process.argv.forEach(o=>{var e,r,s;o.startsWith("-")&&(e=Object.keys(g.paramOptions).find(e=>g.paramOptions[e].test(o)),s=Object.keys(g.flags).find(e=>g.flags[e].test(o)),r=Object.keys(g.infoCmds).find(e=>g.infoCmds[e].test(o)),s?f[s]=!0:e?(/=.+/.test(o)||(console.error(`
8
+ ${a+(m.prefix_error||"ERROR")}: `+`Arg [--${o.replace(/-/g,"")}] `+`${m.error_noEqual||"requires '=' followed by a value"}.${i}`),v(),process.exit(1)),s=o.split("=")[1],f[e]=parseInt(s)||s):r||/ipv4/.test(o)||(console.error(`
9
+ ${a+(m.prefix_error||"ERROR")}: `+`Arg [${o}] ${m.error_notRecognized||"not recognized"}.`),console.info(`
10
+ ${""+(m.info_validArgs||"Valid arguments are below")}.`),$(["paramOptions","flags","infoCmds"]),process.exit(1)))}),f.qty&&(isNaN(f.qty)||f.qty<1)&&(console.error(`
11
+ ${a+(m.prefix_error||"ERROR")}: [qty] `+`${m.error_nonPositiveNum||"argument can only be > 0"}.${i}`),v(),process.exit(1)),process.argv.some(e=>g.infoCmds.help.test(e)))$();else if(process.argv.some(e=>g.infoCmds.version.test(e))){c=t(`npm view ${pkgName} version`).toString().trim()||"none";let e,o=process.cwd();for(;"/"!=o;){var h=n.join(o,"package.json");if(s.existsSync(h)){h=require(h);e=(h.dependencies?.[pkgName]||h.devDependencies?.[pkgName])?.match(/(\d+\.\d+\.\d+)/)[0]||"none";break}o=n.dirname(o)}console.info(`
12
+ ${m.prefix_globalVer||"Global version"}: `+c),console.info(`${m.prefix_localVer||"Local version"}: `+e)}else{c={qty:f.qty||1,verbose:!f.quietMode},c=(f.ipv6mode?o:f.macMode?r:e).generate(c);d=`
13
+ ${m.info_copying||"Copying to clipboard"}...`,f.quietMode||console.info(d),d=Array.isArray(c)?c.join("\n"):c,"darwin"==process.platform?t(`printf "${d}" | pbcopy`):"linux"==process.platform?t(`printf "${d}" | xclip -selection clipboard`):"win32"==process.platform&&t(`Set-Clipboard -Value "${d}"`,{shell:"powershell"})}function u(s){return new Promise((r,e)=>{var o=s.match(/^([^:]+):\/\//)[1];/^https?$/.test(o)||e(new Error(`${m.error_invalidURL||"Invalid URL"}.`)),require(o).get(s,e=>{let o="";e.on("data",e=>o+=e),e.on("end",()=>r({json:()=>JSON.parse(o)}))}).on("error",e)})}function $(e=["header","usage","paramOptions","flags","infoCmds"]){var o=` ${pkgName}  `;const r={header:["\nโ”œ "+o+(m.appCopyright||copyright),o+(m.prefix_source||"Source")+": "+srcURL],usage:[`
14
+ ${p}o ${m.helpSection_usage||"Usage"}:`," ยป "+cmdFormat+i],paramOptions:[`
15
+ ${p}o ${m.helpSection_paramOptions||"Parameter options"}:`,` --qty=n ${m.optionDesc_qty||"Generate n IP address(es)"}.`],flags:[`
16
+ ${p}o ${m.helpSection_flags||"Boolean options"}:`," -6, --ipv6 Generate IPv6 address."," -m, --mac Generate MAC address.",` -q, --quiet ${m.optionDesc_quiet||"Suppress all logging except errors"}.`],infoCmds:[`
17
+ ${p}o ${m.helpSection_infoCmds||"Info commands"}:`," -h, --help "+(m.optionDesc_help||"Display help screen."),` -v, --version ${m.optionDesc_version||"Show version number"}.`]};e.forEach(i=>{r[i]?.forEach(e=>{{var s=/header|usage/.test(i)?1:29;const n=process.stdout.columns||80,t=[],o=e.match(/\S+|\s+/g);let r="";o.forEach(e=>{var o=n-(0==t.length?0:s);r.length+"| ".length+e.length>o&&(t.push(0==t.length?r:r.trimStart()),r=""),r+=e}),t.push(0==t.length?r:r.trimStart()),t.forEach((e,o)=>console.info("| "+(0==o?e:" ".repeat(s)+e)))}})}),console.info(`
18
+ ${m.info_moreHelp||"For more help"}, ${m.info_visit||"visit"}: `+p+docURL+i)}function v(){console.info(`
19
+ ${m.info_moreHelp||"For more help"},`+` ${m.info_type||"type"} 'generate-ip --help'`+` ${m.info_or||"or"} ${m.info_visit||"visit"}
20
+ `+p+docURL+i)}})();
package/docs/README.md CHANGED
@@ -3,9 +3,9 @@
3
3
  ### Randomly generate, format, and validate IPv4 + IPv6 + MAC addresses.
4
4
 
5
5
  <a href="#%EF%B8%8F-mit-license"><img height=31 src="https://img.shields.io/badge/License-MIT-orange.svg?logo=internetarchive&logoColor=white&labelColor=464646&style=for-the-badge"></a>
6
- <a href="https://github.com/adamlui/js-utils/releases/tag/generate-ip-2.3.1"><img height=31 src="https://img.shields.io/badge/Latest_Build-2.3.1-44cc11.svg?logo=icinga&logoColor=white&labelColor=464646&style=for-the-badge"></a>
6
+ <a href="https://github.com/adamlui/js-utils/releases/tag/generate-ip-2.4.1"><img height=31 src="https://img.shields.io/badge/Latest_Build-2.4.1-44cc11.svg?logo=icinga&logoColor=white&labelColor=464646&style=for-the-badge"></a>
7
7
  <a href="https://www.npmjs.com/package/generate-ip?activeTab=code"><img height=31 src="https://img.shields.io/npm/unpacked-size/generate-ip?style=for-the-badge&logo=ebox&logoColor=white&labelColor=464646&color=blue"></a>
8
- <a href="https://github.com/adamlui/js-utils/blob/generate-ip-2.3.1/generate-ip/dist/generate-ip.min.js"><img height=31 src="https://img.shields.io/github/size/adamlui/js-utils/generate-ip/dist/generate-ip.min.js?branch=generate-ip-2.3.1&label=Minified%20Size&logo=databricks&logoColor=white&labelColor=464646&color=ff69b4&style=for-the-badge"></a>
8
+ <a href="https://github.com/adamlui/js-utils/blob/generate-ip-2.4.1/generate-ip/dist/generate-ip.min.js"><img height=31 src="https://img.shields.io/github/size/adamlui/js-utils/generate-ip/dist/generate-ip.min.js?branch=generate-ip-2.4.1&label=Minified%20Size&logo=databricks&logoColor=white&labelColor=464646&color=ff69b4&style=for-the-badge"></a>
9
9
  <a href="https://sonarcloud.io/component_measures?metric=new_vulnerabilities&id=adamlui_js-utils:generate-ip/src/generate-ip.js"><img height=31 src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fsonarcloud.io%2Fapi%2Fmeasures%2Fcomponent%3Fcomponent%3Dadamlui_js-utils%3Agenerate-ip%2Fsrc%2Fgenerate-ip.js%26metricKeys%3Dvulnerabilities&query=%24.component.measures.0.value&style=for-the-badge&logo=sonarcloud&logoColor=white&labelColor=464646&label=Vulnerabilities&color=gold"></a>
10
10
  <a href="https://github.com/toolleeo/cli-apps#networking"><img height=31 src="https://img.shields.io/badge/Mentioned_in-Awesome-c4a2bd?logo=awesomelists&logoColor=white&labelColor=464646&style=for-the-badge"></a>
11
11
  <a href="https://www.jsdelivr.com/package/npm/generate-ip?tab=stats"><img height=31 src="https://img.shields.io/jsdelivr/npm/hm/generate-ip?style=for-the-badge&logo=jsdelivr&logoColor=white&label=jsDelivr%20Hits&labelColor=464646&color=49c5d8"></a>
@@ -72,14 +72,14 @@ const { ipv4, ipv6, mac } = require('generate-ip');
72
72
  #### <> HTML script tag:
73
73
 
74
74
  ```html
75
- <script src="https://cdn.jsdelivr.net/npm/generate-ip@2.3.1/dist/generate-ip.min.js"></script>
75
+ <script src="https://cdn.jsdelivr.net/npm/generate-ip@2.4.1/dist/generate-ip.min.js"></script>
76
76
  ```
77
77
 
78
78
  #### ES6:
79
79
 
80
80
  ```js
81
81
  (async () => {
82
- await import('https://cdn.jsdelivr.net/npm/generate-ip@2.3.1/dist/generate-ip.min.js');
82
+ await import('https://cdn.jsdelivr.net/npm/generate-ip@2.4.1/dist/generate-ip.min.js');
83
83
  // Your code here...
84
84
  })();
85
85
  ```
@@ -88,7 +88,7 @@ const { ipv4, ipv6, mac } = require('generate-ip');
88
88
 
89
89
  ```js
90
90
  ...
91
- // @require https://cdn.jsdelivr.net/npm/generate-ip@2.3.1/dist/generate-ip.min.js
91
+ // @require https://cdn.jsdelivr.net/npm/generate-ip@2.4.1/dist/generate-ip.min.js
92
92
  // ==/UserScript==
93
93
 
94
94
  // Your code here...
@@ -96,7 +96,7 @@ const { ipv4, ipv6, mac } = require('generate-ip');
96
96
 
97
97
  <br>
98
98
 
99
- ๐Ÿ“ **Note:** To always import the latest version (not recommended in production!) remove the `@2.3.1` version tag from the jsDelivr URL: `https://cdn.jsdelivr.net/npm/generate-ip/dist/generate-ip.min.js`
99
+ ๐Ÿ“ **Note:** To always import the latest version (not recommended in production!) remove the `@2.4.1` version tag from the jsDelivr URL: `https://cdn.jsdelivr.net/npm/generate-ip/dist/generate-ip.min.js`
100
100
 
101
101
  <br>
102
102
 
@@ -345,7 +345,7 @@ Sample output:
345
345
 
346
346
  <img src="https://media.generate-ip.org/images/screenshots/cli/generate-ip-cmd-output.png?7b16322">
347
347
 
348
- ๐Ÿ“ **Note:** To generate multiple IP addresses, pass `--qty=n` where `n` is the number of IPs to generate.
348
+ ๐Ÿ“ **Note:** To generate other address types, use `generate-ipv6` or `generate-mac`.
349
349
 
350
350
  #
351
351
 
@@ -356,6 +356,8 @@ Parameter options:
356
356
  --qty=n Generate n IP address(es).
357
357
 
358
358
  Boolean options:
359
+ -6, --ipv6 Generate IPv6 address.
360
+ -m, --mac Generate MAC address.
359
361
  -q, --quiet Suppress all logging except errors.
360
362
 
361
363
  Info commands:
@@ -383,7 +385,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
383
385
 
384
386
  ## ๐Ÿ› ๏ธ Related utilities
385
387
 
386
- ### [๐Ÿ”’ generate-pw](../generate-pw) <a href="https://github.com/toolleeo/cli-apps#password-managers"><img height=18 src="https://media.js-utils.com/images/badges/awesome/badge.svg?7b16322"></a>
388
+ ### [๐Ÿ”’ generate-pw](../generate-pw) &nbsp;<a href="https://github.com/toolleeo/cli-apps#password-managers"><img height=18 src="https://media.js-utils.com/images/badges/awesome/badge.svg?7b16322"></a>
387
389
 
388
390
  > Randomly generate, strengthen, and validate cryptographically-secure passwords.
389
391
  <br>[Install](https://docs.generatepw.org/#-installation) /
@@ -392,7 +394,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
392
394
  [CLI usage](https://docs.generatepw.org/#-command-line-usage) /
393
395
  [Discuss](https://github.js-utils.com/discussions)
394
396
 
395
- ### <picture><source media="(prefers-color-scheme: dark)" srcset="https://media.geolocatejs.org/images/icons/wire-globe/white/icon32.png?e735b99"><img height=22 src="https://media.geolocatejs.org/images/icons/wire-globe/black/icon32.png?e735b99"></picture> [geolocate](https://js-utils.com/geolocate)
397
+ ### <picture><source media="(prefers-color-scheme: dark)" srcset="https://media.geolocatejs.org/images/icons/wire-globe/white/icon32.png?e735b99"><img height=22 src="https://media.geolocatejs.org/images/icons/wire-globe/black/icon32.png?e735b99"></picture> [geolocate](https://js-utils.com/geolocate) &nbsp;<a href="https://github.com/toolleeo/cli-apps#networking"><img height=18 src="https://media.js-utils.com/images/badges/awesome/badge.svg?7b16322"></a>
396
398
 
397
399
  > Fetch IP geolocation data from the CLI.
398
400
  <br>[Install](https://docs.geolocatejs.org/#-installation) /
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "generate-ip",
3
- "version": "2.3.1",
3
+ "version": "2.4.1",
4
4
  "description": "Randomly generate, format, and validate IPv4 + IPv6 + MAC addresses.",
5
5
  "author": {
6
6
  "name": "Adam Lui",
@@ -14,11 +14,8 @@
14
14
  "dist",
15
15
  "docs"
16
16
  ],
17
- "bin": {
18
- "generateip": "dist/cli.min.js",
19
- "generate-ip": "dist/cli.min.js"
20
- },
21
17
  "directories": {
18
+ "bin": "./bin",
22
19
  "lib": "./dist",
23
20
  "doc": "./docs"
24
21
  },
@@ -56,6 +53,6 @@
56
53
  "url": "https://github.com/sponsors/adamlui"
57
54
  },
58
55
  "devDependencies": {
59
- "@adamlui/minify.js": "^1.5.8"
56
+ "@adamlui/minify.js": "^1.6.1"
60
57
  }
61
58
  }