diff --git a/.gitignore b/.gitignore index b47d7c8..e71e79f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,6 @@ .* !/.gitignore /vendor/ -/web/alive.html composer.lock *.log !**.gitkeep diff --git a/bin/generate-all.sh b/bin/generate-all.sh deleted file mode 100644 index 01ba868..0000000 --- a/bin/generate-all.sh +++ /dev/null @@ -1,96 +0,0 @@ -#!/bin/bash -################################################################################ -## "generate-all.sh" -## (Re)generates all TLD Enumeration format files using the current -## contents of the 'tlds.csv' file. -################################################################################ -################################################################################ -## this script does not have any configuration variables -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -################################################################################ -## convenience variable for referring to this script -################################################################################ -ME_NAME='generate-all.sh' -################################################################################ -## -## introduction -## -################################################################################ -echo "$ME_NAME" -echo -e " (re)generates all TLD format files using the current contents of the 'tlds.csv' file\n" -################################################################################ -## -## generate PHP format -## -################################################################################ -echo "generating PHP format..." -generate-php-tld-enum.php -GEN_STATUS=$? -################################################################################ -## -## enforce that PHP format generation was a reported success before proceeding -## -################################################################################ -if [ "$GEN_STATUS" -ne "0" ]; then - >&2 echo -e "$ME_NAME: cannot continue; PHP generator script failed (exit status $GEN_STATUS)" - exit $GEN_STATUS -fi -################################################################################ -## -## generate JSON format -## -################################################################################ -echo "generating JSON format..." -generate-json-tld-enum.js -GEN_STATUS=$? -################################################################################ -## -## enforce that JSON format generation was a reported success before proceeding -## -################################################################################ -if [ "$GEN_STATUS" -ne "0" ]; then - >&2 echo -e "$ME_NAME: cannot continue; JSON generator script failed (exit status $GEN_STATUS)" - exit $GEN_STATUS -fi -################################################################################ -## -## generate CSV (text) format -## -################################################################################ -echo "generating CSV (text) format..." -generate-csv-tld-enum.js -GEN_STATUS=$? -################################################################################ -## -## enforce that CSV format generation was a reported success before proceeding -## -################################################################################ -if [ "$GEN_STATUS" -ne "0" ]; then - >&2 echo -e "$ME_NAME: cannot continue; CSV (text) generator script failed (exit status $GEN_STATUS)" - exit $GEN_STATUS -fi - -################################################################################ -## -## indicate success with message -## -################################################################################ -echo "successfully (re)generated all TLS format files" \ No newline at end of file diff --git a/bin/generate-csv-tld-enum.js b/bin/generate-csv-tld-enum.js deleted file mode 100644 index a5bfed3..0000000 --- a/bin/generate-csv-tld-enum.js +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env node -console.log("generates the 'tlds-name-only.csv' CSV text file from the 'tlds.csv' csv file"); -console.log("---this script is currently a 'to-do' placeholder!---"); -console.error("terminating... the development for the 'CSV' (text) format generator has not yet been completed"); \ No newline at end of file diff --git a/bin/update-tlds b/bin/update-tlds new file mode 100644 index 0000000..b4d89c6 --- /dev/null +++ b/bin/update-tlds @@ -0,0 +1,4 @@ +#!/usr/bin/env node + +console.log("updates the 'tlds.csv' file from iana.org and re-generates the native format files in the 'format/' directory"); +console.log("---this script is currently a 'to-do' placeholder!---"); \ No newline at end of file diff --git a/composer.json b/composer.json index 96df3f5..fa9da65 100644 --- a/composer.json +++ b/composer.json @@ -1,17 +1,17 @@ { - "name": "katmore/tld-enum", - "description" : "Lists of every ICANN TLD in formats that can be natively compiled in various language targets", - "homepage":"https://github.com/katmore/tld-enum", + "name": "katmore/tld-enum", + "description": "Lists of every ICANN TLD in formats that can be natively compiled in various language targets", + "homepage": "https://github.com/katmore/tld-enum", "autoload": { "psr-4": { - "TldEnum\\": "src/formats/php/TldEnum/" + "TldEnum\\": "formats/php/TldEnum/" } }, - "license": [ - "MIT", - "GPL-3.0+" + "license": [ + "MIT", + "GPL-3.0+" ], "require": { - "php" : ">=7.1.1" - } -} + "php": ">=7.1.1" + } +} \ No newline at end of file diff --git a/formats/.gitkeep b/formats/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/formats/js/tld-enum.js b/formats/js/tld-enum.js new file mode 100644 index 0000000..72d0163 --- /dev/null +++ b/formats/js/tld-enum.js @@ -0,0 +1,288 @@ +exports.tldList = () => { + return [ + "ac", + "ad", + "ae", + "aero", + "af", + "ag", + "ai", + "al", + "am", + "an", + "ao", + "aq", + "ar", + "arpa", + "as", + "asia", + "at", + "au", + "aw", + "ax", + "az", + "ba", + "bb", + "bd", + "be", + "bf", + "bg", + "bh", + "bi", + "biz", + "bj", + "bl", + "bm", + "bn", + "bo", + "bq", + "br", + "bs", + "bt", + "bv", + "bw", + "by", + "bz", + "ca", + "cat", + "cc", + "cd", + "cf", + "cg", + "ch", + "ci", + "ck", + "cl", + "cm", + "cn", + "co", + "com", + "coop", + "cr", + "cs", + "cu", + "cv", + "cw", + "cx", + "cy", + "cz", + "dd", + "de", + "dj", + "dk", + "dm", + "do", + "dz", + "ec", + "edu", + "ee", + "eg", + "eh", + "er", + "es", + "et", + "eu", + "fi", + "fj", + "fk", + "fm", + "fo", + "fr", + "ga", + "gb", + "gd", + "ge", + "gf", + "gg", + "gh", + "gi", + "gl", + "gm", + "gn", + "gov", + "gp", + "gq", + "gr", + "gs", + "gt", + "gu", + "gw", + "gy", + "hk", + "hm", + "hn", + "hr", + "ht", + "hu", + "id", + "ie", + "il", + "im", + "in", + "info", + "int", + "io", + "iq", + "ir", + "is", + "it", + "je", + "jm", + "jo", + "jobs", + "jp", + "ke", + "kg", + "kh", + "ki", + "km", + "kn", + "kp", + "kr", + "kw", + "ky", + "kz", + "la", + "lb", + "lc", + "li", + "lk", + "local", + "lr", + "ls", + "lt", + "lu", + "lv", + "ly", + "ma", + "mc", + "md", + "me", + "mf", + "mg", + "mh", + "mil", + "mk", + "ml", + "mm", + "mn", + "mo", + "mobi", + "mp", + "mq", + "mr", + "ms", + "mt", + "mu", + "museum", + "mv", + "mw", + "mx", + "my", + "mz", + "na", + "name", + "nato", + "nc", + "ne", + "net", + "nf", + "ng", + "ni", + "nl", + "no", + "np", + "nr", + "nu", + "nz", + "om", + "onion", + "org", + "pa", + "pe", + "pf", + "pg", + "ph", + "pk", + "pl", + "pm", + "pn", + "pr", + "pro", + "ps", + "pt", + "pw", + "py", + "qa", + "re", + "ro", + "rs", + "ru", + "rw", + "sa", + "sb", + "sc", + "sd", + "se", + "sg", + "sh", + "si", + "sj", + "sk", + "sl", + "sm", + "sn", + "so", + "sr", + "ss", + "st", + "su", + "sv", + "sx", + "sy", + "sz", + "tc", + "td", + "tel", + "tf", + "tg", + "th", + "tj", + "tk", + "tl", + "tm", + "tn", + "to", + "tp", + "tr", + "travel", + "tt", + "tv", + "tw", + "tz", + "ua", + "ug", + "uk", + "um", + "us", + "uy", + "uz", + "va", + "vc", + "ve", + "vg", + "vi", + "vn", + "vu", + "wf", + "ws", + "xxx", + "ye", + "yt", + "yu", + "za", + "zm", + "zr", + "zw" + ]; +} \ No newline at end of file diff --git a/src/formats/json/tld-list.json b/formats/json/tld-list.json similarity index 100% rename from src/formats/json/tld-list.json rename to formats/json/tld-list.json diff --git a/src/formats/php/TldEnum/TldEnum.php b/formats/php/TldEnum/TldEnum.php similarity index 100% rename from src/formats/php/TldEnum/TldEnum.php rename to formats/php/TldEnum/TldEnum.php diff --git a/package.json b/package.json new file mode 100644 index 0000000..7c7bce5 --- /dev/null +++ b/package.json @@ -0,0 +1,22 @@ +{ + "name": "tld-enum", + "version": "1.0.0", + "description": "Lists of every ICANN TLD in formats that can be natively compiled in various language targets", + "main": "formats/js/tld-enum.js", + "bin": { + "tld-enum": "generate-json-tld-enum.js" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/katmore/tld-enum.git" + }, + "author": "", + "license": "MIT", + "bugs": { + "url": "https://github.com/katmore/tld-enum/issues" + }, + "homepage": "https://github.com/katmore/tld-enum#readme" +} diff --git a/src/.gitkeep b/src/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/src/formats/csv/tlds-name-only.csv b/src/formats/csv/tlds-name-only.csv deleted file mode 100644 index 3392016..0000000 --- a/src/formats/csv/tlds-name-only.csv +++ /dev/null @@ -1,285 +0,0 @@ -ac -ad -ae -aero -af -ag -ai -al -am -an -ao -aq -ar -arpa -as -asia -at -au -aw -ax -az -ba -bb -bd -be -bf -bg -bh -bi -biz -bj -bl -bm -bn -bo -bq -br -bs -bt -bv -bw -by -bz -ca -cat -cc -cd -cf -cg -ch -ci -ck -cl -cm -cn -co -com -coop -cr -cs -cu -cv -cw -cx -cy -cz -dd -de -dj -dk -dm -do -dz -ec -edu -ee -eg -eh -er -es -et -eu -fi -fj -fk -fm -fo -fr -ga -gb -gd -ge -gf -gg -gh -gi -gl -gm -gn -gov -gp -gq -gr -gs -gt -gu -gw -gy -hk -hm -hn -hr -ht -hu -id -ie -il -im -in -info -int -io -iq -ir -is -it -je -jm -jo -jobs -jp -ke -kg -kh -ki -km -kn -kp -kr -kw -ky -kz -la -lb -lc -li -lk -local -lr -ls -lt -lu -lv -ly -ma -mc -md -me -mf -mg -mh -mil -mk -ml -mm -mn -mo -mobi -mp -mq -mr -ms -mt -mu -museum -mv -mw -mx -my -mz -na -name -nato -nc -ne -net -nf -ng -ni -nl -no -np -nr -nu -nz -om -onion -org -pa -pe -pf -pg -ph -pk -pl -pm -pn -pr -pro -ps -pt -pw -py -qa -re -ro -rs -ru -rw -sa -sb -sc -sd -se -sg -sh -si -sj -sk -sl -sm -sn -so -sr -ss -st -su -sv -sx -sy -sz -tc -td -tel -tf -tg -th -tj -tk -tl -tm -tn -to -tp -tr -travel -tt -tv -tw -tz -ua -ug -uk -um -us -uy -uz -va -vc -ve -vg -vi -vn -vu -wf -ws -xxx -ye -yt -yu -za -zm -zr -zw - diff --git a/src/helpers/generate-js-tld-enum.js b/src/helpers/generate-js-tld-enum.js new file mode 100644 index 0000000..5d52554 --- /dev/null +++ b/src/helpers/generate-js-tld-enum.js @@ -0,0 +1,5 @@ +#!/usr/bin/env node + +console.log("generates the 'tld-enum.js' node source file from the 'tlds.csv' csv file"); +console.log("---this script is currently a 'to-do' placeholder!---"); +console.error("terminating... the development for the 'JSON' format generator has not yet been completed"); \ No newline at end of file diff --git a/bin/generate-json-tld-enum.js b/src/helpers/generate-json-tld-enum.js similarity index 100% rename from bin/generate-json-tld-enum.js rename to src/helpers/generate-json-tld-enum.js diff --git a/bin/generate-php-tld-enum.php b/src/helpers/generate-php-tld-enum.php similarity index 100% rename from bin/generate-php-tld-enum.php rename to src/helpers/generate-php-tld-enum.php