{"_id":"parse-domain","_rev":"2906322","name":"parse-domain","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","dist-tags":{"beta":"3.0.0-beta.10","latest":"7.0.1"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"time":{"modified":"2022-12-14T07:20:13.000Z","created":"2014-05-14T08:40:10.830Z","7.0.1":"2022-06-30T14:54:49.829Z","7.0.0":"2022-01-23T19:59:38.801Z","6.0.1":"2022-01-23T19:15:48.295Z","6.0.0":"2022-01-23T19:09:57.293Z","5.0.0":"2022-01-23T12:51:35.213Z","4.1.0":"2021-09-03T11:10:28.814Z","4.0.0":"2021-09-02T18:24:50.188Z","3.0.4":"2021-09-02T16:02:53.884Z","3.0.3":"2020-10-20T12:21:19.769Z","3.0.2":"2020-05-06T21:48:24.327Z","3.0.1":"2020-04-24T17:38:36.573Z","3.0.0":"2020-04-23T18:06:45.440Z","3.0.0-beta.10":"2020-04-23T17:10:04.248Z","3.0.0-beta.9":"2020-04-20T14:53:55.723Z","3.0.0-beta.8":"2020-04-20T14:49:29.126Z","3.0.0-beta.7":"2020-04-20T14:42:07.155Z","3.0.0-beta.6":"2020-04-20T14:23:10.313Z","3.0.0-beta.5":"2020-04-20T14:09:28.789Z","3.0.0-beta.4":"2020-04-19T18:51:24.250Z","3.0.0-beta.3":"2020-04-19T18:30:51.181Z","3.0.0-beta.2":"2020-03-15T11:44:48.819Z","3.0.0-beta.1":"2020-03-14T17:45:13.683Z","2.4.0-beta.1":"2020-03-14T17:26:41.576Z","2.3.4":"2019-11-02T12:38:48.638Z","2.3.3":"2019-11-02T11:42:13.497Z","2.3.2":"2019-08-10T18:10:51.006Z","2.3.1":"2019-06-14T17:03:24.304Z","2.3.0":"2019-05-29T11:43:09.475Z","2.2.1":"2019-05-28T12:39:09.001Z","2.2.0":"2019-05-27T22:22:23.975Z","2.1.8":"2019-05-27T21:57:58.808Z","2.1.7":"2018-11-27T12:07:05.057Z","2.1.6":"2018-10-19T12:01:49.130Z","2.1.5":"2018-10-19T11:35:36.156Z","2.1.4":"2018-10-19T08:54:25.922Z","2.1.3":"2018-10-19T08:35:21.084Z","2.1.2":"2018-06-13T12:02:51.414Z","2.1.1":"2018-05-30T12:18:42.567Z","2.1.0":"2018-05-30T12:17:45.627Z","2.0.0":"2017-12-03T01:48:14.478Z","1.2.0":"2017-12-03T01:02:03.650Z","1.1.0":"2017-02-07T23:18:09.401Z","1.0.0":"2016-10-14T13:46:33.875Z","0.3.0":"2016-10-04T01:39:54.278Z","0.2.2":"2016-10-04T01:36:24.726Z","0.2.1":"2016-01-31T16:44:43.875Z","0.2.0":"2015-10-24T10:46:51.335Z","0.1.2":"2014-05-20T15:45:29.751Z","0.1.1":"2014-05-15T13:02:06.519Z","0.1.0":"2014-05-14T08:40:10.830Z"},"users":{"wzbg":true,"lvpeng101":true,"elevenlui":true,"alshamiri2":true,"tzq1011":true},"author":{"name":"peerigon","email":"developers@peerigon.com"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"versions":{"7.0.1":{"name":"parse-domain","version":"7.0.1","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"type":"module","main":"./build/main.js","types":"./build/main.d.ts","scripts":{"test":"run-p test:*","test:suite":"node --no-warnings --experimental-vm-modules ./node_modules/jest/bin/jest.js","test:lint":"eslint --max-warnings 0 --cache --ext js,ts --ignore-path .gitignore .","build":"run-s build:*","build:cleanup":"rimraf build","build:tsc":"tsc -p ./tsconfig.build.json","build:update":"./bin/update.js","prepare":"run-s prepare:*","prepare:husky":"husky install","prepare:build":"npm run build","update:psl-fixture":"npm run node -- ./src/scripts/update-psl-fixture.ts","update:dependencies":"updtr","node":"node --no-warnings --loader ts-node/esm/transpile-only"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"MIT","sideEffects":false,"lint-staged":{"*.{ts,tsx,js,cjs,mjs,jsx}":["eslint --cache --fix","prettier --write"],".github/workflows/*.{yml,yaml}":["pin-github-action --allow-empty","prettier --write"],"*.{json,css,md,yml,yaml}":"prettier --write"},"dependencies":{"is-ip":"^4.0.0","node-fetch":"^3.2.0"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^17.0.10","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^5.10.0","eslint":"^8.7.0","eslint-config-peerigon":"^33.2.4","eslint-plugin-no-null":"^1.0.2","eslint-plugin-node":"^11.1.0","husky":"^7.0.4","jest":"^27.4.7","lint-staged":"^12.3.1","nock":"^13.2.2","npm-run-all":"^4.1.5","pin-github-action":"^1.5.0","prettier":"^2.5.1","rimraf":"^3.0.2","ts-jest":"^27.1.3","ts-node":"^10.4.0","typescript":"^4.5.5","updtr":"^4.0.0"},"gitHead":"71d48bd7909c1157d82282db2bf0c0d1bab38b5e","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@7.0.1","_nodeVersion":"16.15.1","_npmVersion":"8.13.2","dist":{"shasum":"37c12347acfa17d6e7835be48867ba035a9384ef","size":56639,"noattachment":false,"key":"/parse-domain/-/parse-domain-7.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-7.0.1.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_7.0.1_1656600889685_0.27662018157837487"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-07-01T00:51:19.767Z","publish_time":1656600889829,"_cnpm_publish_time":1656600889829},"7.0.0":{"name":"parse-domain","version":"7.0.0","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"type":"module","main":"./build/main.js","types":"./build/main.d.ts","scripts":{"test":"run-p test:*","test:suite":"node --no-warnings --experimental-vm-modules ./node_modules/jest/bin/jest.js","test:lint":"eslint --max-warnings 0 --cache --ext js,ts --ignore-path .gitignore .","build":"run-s build:*","build:cleanup":"rimraf build","build:tsc":"tsc -p ./tsconfig.build.json","build:update":"./bin/update.js","prepare":"run-s prepare:*","prepare:husky":"husky install","prepare:build":"npm run build","update:psl-fixture":"npm run node -- ./src/scripts/update-psl-fixture.ts","update:dependencies":"updtr","node":"node --no-warnings --loader ts-node/esm/transpile-only"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"MIT","sideEffects":false,"lint-staged":{"*.{ts,tsx,js,cjs,mjs,jsx}":["eslint --cache --fix","prettier --write"],".github/workflows/*.{yml,yaml}":["pin-github-action --allow-empty","prettier --write"],"*.{json,css,md,yml,yaml}":"prettier --write"},"dependencies":{"is-ip":"^4.0.0","node-fetch":"^3.2.0"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^17.0.10","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^5.10.0","eslint":"^8.7.0","eslint-config-peerigon":"^33.2.4","eslint-plugin-no-null":"^1.0.2","eslint-plugin-node":"^11.1.0","husky":"^7.0.4","jest":"^27.4.7","lint-staged":"^12.3.1","nock":"^13.2.2","npm-run-all":"^4.1.5","pin-github-action":"^1.5.0","prettier":"^2.5.1","rimraf":"^3.0.2","ts-jest":"^27.1.3","ts-node":"^10.4.0","typescript":"^4.5.5","updtr":"^4.0.0"},"gitHead":"f226197e385d14559b5fb49a2cf5ca297933fd2f","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@7.0.0","_nodeVersion":"16.13.2","_npmVersion":"8.3.2","dist":{"shasum":"989ee2b54d485e8ce95b155a58a541d0f28a4f01","size":55898,"noattachment":false,"key":"/parse-domain/-/parse-domain-7.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-7.0.0.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_7.0.0_1642967978639_0.9456923687576033"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-01-23T20:00:00.417Z","publish_time":1642967978801,"_cnpm_publish_time":1642967978801},"6.0.1":{"name":"parse-domain","version":"6.0.1","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"type":"module","main":"./build/main.js","types":"./build/main.d.ts","scripts":{"test":"run-p test:*","test:suite":"node --no-warnings --experimental-vm-modules ./node_modules/jest/bin/jest.js","test:lint":"eslint --max-warnings 0 --cache --ext js,ts --ignore-path .gitignore .","build":"run-s build:*","build:cleanup":"rimraf build","build:tsc":"tsc -p ./tsconfig.build.json","build:update":"./bin/update.js","prepare":"run-s prepare:*","prepare:husky":"husky install","prepare:build":"npm run build","update:psl-fixture":"npm run node -- ./src/scripts/update-psl-fixture.ts","update:dependencies":"updtr","node":"node --no-warnings --loader ts-node/esm/transpile-only"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"MIT","sideEffects":false,"lint-staged":{"*.{ts,tsx,js,cjs,mjs,jsx}":["eslint --cache --fix","prettier --write"],".github/workflows/*.{yml,yaml}":["pin-github-action --allow-empty","prettier --write"],"*.{json,css,md,yml,yaml}":"prettier --write"},"dependencies":{"is-ip":"^4.0.0","node-fetch":"^3.2.0"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^17.0.10","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^5.10.0","eslint":"^8.7.0","eslint-config-peerigon":"^33.2.4","eslint-plugin-no-null":"^1.0.2","eslint-plugin-node":"^11.1.0","husky":"^7.0.4","jest":"^27.4.7","lint-staged":"^12.3.1","nock":"^13.2.2","npm-run-all":"^4.1.5","pin-github-action":"^1.5.0","prettier":"^2.5.1","rimraf":"^3.0.2","ts-jest":"^27.1.3","ts-node":"^10.4.0","typescript":"^4.5.5","updtr":"^4.0.0"},"gitHead":"2f80049069a2caa81b8c004dd64aed5a5120a9e4","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@6.0.1","_nodeVersion":"16.13.2","_npmVersion":"8.3.2","dist":{"shasum":"89f1c3bc71fc3e64747236979aac42dbb4b12cfa","size":55892,"noattachment":false,"key":"/parse-domain/-/parse-domain-6.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-6.0.1.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_6.0.1_1642965348152_0.39772792687505576"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-01-23T19:16:00.226Z","publish_time":1642965348295,"_cnpm_publish_time":1642965348295},"6.0.0":{"name":"parse-domain","version":"6.0.0","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"type":"module","main":"./build/src/main.js","types":"./build/src/main.d.ts","scripts":{"test":"run-p test:*","test:suite":"node --no-warnings --experimental-vm-modules ./node_modules/jest/bin/jest.js","test:lint":"eslint --max-warnings 0 --cache --ext js,ts --ignore-path .gitignore .","build":"run-s build:*","build:cleanup":"rimraf build","build:tsc":"tsc -p ./tsconfig.build.json","build:update":"./bin/update.js","prepare":"run-s prepare:*","prepare:husky":"husky install","prepare:build":"npm run build","update:psl-fixture":"npm run node -- ./src/scripts/update-psl-fixture.ts","update:dependencies":"updtr","node":"node --no-warnings --loader ts-node/esm/transpile-only"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"MIT","sideEffects":false,"lint-staged":{"*.{ts,tsx,js,cjs,mjs,jsx}":["eslint --cache --fix","prettier --write"],".github/workflows/*.{yml,yaml}":["pin-github-action --allow-empty","prettier --write"],"*.{json,css,md,yml,yaml}":"prettier --write"},"dependencies":{"is-ip":"^4.0.0","node-fetch":"^3.2.0"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^17.0.10","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^5.10.0","eslint":"^8.7.0","eslint-config-peerigon":"^33.2.4","eslint-plugin-no-null":"^1.0.2","eslint-plugin-node":"^11.1.0","husky":"^7.0.4","jest":"^27.4.7","lint-staged":"^12.3.1","nock":"^13.2.2","npm-run-all":"^4.1.5","pin-github-action":"^1.5.0","prettier":"^2.5.1","rimraf":"^3.0.2","ts-jest":"^27.1.3","ts-node":"^10.4.0","typescript":"^4.5.5","updtr":"^4.0.0"},"gitHead":"7aec7f24281005d00cc60699c6c93b0a7af6c8b9","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@6.0.0","_nodeVersion":"16.13.2","_npmVersion":"8.3.2","dist":{"shasum":"220289e3b6312d0a205c5b82ab32018c3142f3af","size":55892,"noattachment":false,"key":"/parse-domain/-/parse-domain-6.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-6.0.0.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_6.0.0_1642964996663_0.27759724873189184"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-01-23T19:10:06.031Z","publish_time":1642964997293,"_cnpm_publish_time":1642964997293},"5.0.0":{"name":"parse-domain","version":"5.0.0","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","types":"./build-esm/src/main.d.ts","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","default":"./build-esm/src/main.js"},"scripts":{"test":"run-p test:*","test:suite":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint --cache --ext js,ts *.js src bin","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:update":"./bin/update.js","prepare":"husky install","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"MIT","sideEffects":false,"lint-staged":{"*.{ts,tsx,js,cjs,mjs,jsx}":["eslint --cache --fix","prettier --write"],".github/workflows/*.{yml,yaml}":["pin-github-action --allow-empty","prettier --write"],"*.{json,css,md,yml,yaml}":"prettier --write"},"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.1","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^27.0.1","@types/node":"^16.7.10","@types/node-fetch":"^2.5.12","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^4.30.0","@typescript-eslint/parser":"^4.30.0","cpy-cli":"^3.1.1","eslint":"^7.32.0","eslint-config-peerigon":"^31.0.2","eslint-plugin-no-null":"^1.0.2","eslint-plugin-node":"^11.1.0","husky":"^7.0.2","jest":"^27.1.0","lint-staged":"^11.1.2","nock":"^13.1.3","npm-run-all":"^4.1.5","pin-github-action":"^1.4.0","prettier":"^2.3.2","rimraf":"^3.0.2","ts-jest":"^27.0.5","ts-node":"^10.2.1","typescript":"^4.4.2","updtr":"^4.0.0"},"gitHead":"c46ff0d00da3a367cd7e9ebf5d275fff16f633ef","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@5.0.0","_nodeVersion":"16.13.2","_npmVersion":"8.3.2","dist":{"shasum":"cd6df1fd345f5722a0e55a3c13156057a4c7c151","size":84113,"noattachment":false,"key":"/parse-domain/-/parse-domain-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-5.0.0.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_5.0.0_1642942295075_0.3373277201083906"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-01-23T12:51:46.683Z","publish_time":1642942295213,"_cnpm_publish_time":1642942295213},"4.1.0":{"name":"parse-domain","version":"4.1.0","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","types":"./build-esm/src/main.d.ts","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint --cache --ext js,ts *.js src bin","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:update":"./bin/update.js","prepare":"husky install","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"MIT","sideEffects":false,"lint-staged":{"*.{ts,tsx,js,cjs,mjs,jsx}":["eslint --cache --fix","prettier --write"],".github/workflows/*.{yml,yaml}":["pin-github-action --allow-empty","prettier --write"],"*.{json,css,md,yml,yaml}":"prettier --write"},"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.1","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^27.0.1","@types/node":"^16.7.10","@types/node-fetch":"^2.5.12","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^4.30.0","@typescript-eslint/parser":"^4.30.0","cpy-cli":"^3.1.1","eslint":"^7.32.0","eslint-config-peerigon":"^31.0.2","eslint-plugin-no-null":"^1.0.2","eslint-plugin-node":"^11.1.0","husky":"^7.0.2","jest":"^27.1.0","lint-staged":"^11.1.2","nock":"^13.1.3","npm-run-all":"^4.1.5","pin-github-action":"^1.4.0","prettier":"^2.3.2","rimraf":"^3.0.2","ts-jest":"^27.0.5","ts-node":"^10.2.1","typescript":"^4.4.2","updtr":"^4.0.0"},"gitHead":"0184f41adb80abcbe0e22f17791799f3d90e2030","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@4.1.0","_nodeVersion":"16.8.0","_npmVersion":"7.22.0","dist":{"shasum":"b2baae57db49f6fb805bb2dba7103ebf981a8ab7","size":82014,"noattachment":false,"key":"/parse-domain/-/parse-domain-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-4.1.0.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_4.1.0_1630667428630_0.10873960449961473"},"_hasShrinkwrap":false,"publish_time":1630667428814,"_cnpm_publish_time":1630667428814},"4.0.0":{"name":"parse-domain","version":"4.0.0","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","types":"./build-esm/src/main.d.ts","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint --cache --ext js,ts *.js src bin","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:update":"./bin/update.js","prepare":"husky install","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.1","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^27.0.1","@types/node":"^16.7.10","@types/node-fetch":"^2.5.12","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^4.30.0","@typescript-eslint/parser":"^4.30.0","cpy-cli":"^3.1.1","eslint":"^7.32.0","eslint-config-peerigon":"^31.0.2","eslint-plugin-no-null":"^1.0.2","eslint-plugin-node":"^11.1.0","husky":"^7.0.2","jest":"^27.1.0","nock":"^13.1.3","npm-run-all":"^4.1.5","prettier":"^2.3.2","pretty-quick":"^3.1.1","rimraf":"^3.0.2","ts-jest":"^27.0.5","ts-node":"^10.2.1","typescript":"^4.4.2","updtr":"^4.0.0"},"gitHead":"1def69aee7559079502c2dc1e84e87cc93caae43","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@4.0.0","_nodeVersion":"16.5.0","_npmVersion":"7.21.1","dist":{"shasum":"85428a6ad6da07d1309c6e10fe388a61dc2182d1","size":82086,"noattachment":false,"key":"/parse-domain/-/parse-domain-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-4.0.0.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_4.0.0_1630607090044_0.7435314986727874"},"_hasShrinkwrap":false,"publish_time":1630607090188,"_cnpm_publish_time":1630607090188},"3.0.4":{"name":"parse-domain","version":"3.0.4","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","types":"./build-esm/src/main.d.ts","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:update":"./bin/update.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"gitHead":"fdc78eeecd672fb91ac795d07ca554abbe2d83de","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.4","_nodeVersion":"16.5.0","_npmVersion":"7.21.1","dist":{"shasum":"99811f389864831ef31ee588917f782c120a6fb5","size":81278,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.4.tgz"},"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.4_1630598573679_0.1796901640763644"},"_hasShrinkwrap":false,"publish_time":1630598573884,"_cnpm_publish_time":1630598573884},"3.0.3":{"name":"parse-domain","version":"3.0.3","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","types":"./build-esm/src/main.d.ts","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:update":"./bin/update.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"gitHead":"b47b4e52965e60ad11f8e4c947e1aa0e247fcbc6","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.3","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"shasum":"83df611ee3f77896175355cc12f3c652dd5931aa","size":84042,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.3.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.3_1603196479588_0.6464407205017515"},"_hasShrinkwrap":false,"publish_time":1603196479769,"_cnpm_publish_time":1603196479769},"3.0.2":{"name":"parse-domain","version":"3.0.2","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","types":"./build-esm/src/main.d.ts","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:update":"./bin/update.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"gitHead":"1075d79ad3e8ae988a0387892b123f0b0c0b76e0","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.2","_nodeVersion":"12.16.1","_npmVersion":"6.14.4","dist":{"shasum":"ed13cf18c81d2bdeb6fbe6cf21ba8ea5c8f53818","size":82695,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.2.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.2_1588801704198_0.8695377694134097"},"_hasShrinkwrap":false,"publish_time":1588801704327,"_cnpm_publish_time":1588801704327},"3.0.1":{"name":"parse-domain","version":"3.0.1","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:update":"./bin/update.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"gitHead":"b5e746c782c5461bd4cdfeb1320b03e89c3e2f15","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.1","_nodeVersion":"12.16.1","_npmVersion":"6.14.4","dist":{"shasum":"22c763a7a8903b60f758402a440633ac39f2bf48","size":82608,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.1.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.1_1587749916409_0.7752051973002876"},"_hasShrinkwrap":false,"publish_time":1587749916573,"_cnpm_publish_time":1587749916573},"3.0.0":{"name":"parse-domain","version":"3.0.0","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:smoke-test":"node ./build-cjs/src/smoke-test.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"gitHead":"a22b76e4877df754c32787bffc0a18af50d4b9e6","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0","_nodeVersion":"12.16.1","_npmVersion":"6.14.4","dist":{"shasum":"d5c85c0937ddd1b2f4496c93596912967c79a834","size":82326,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0_1587665205229_0.5516517095200864"},"_hasShrinkwrap":false,"publish_time":1587665205440,"_cnpm_publish_time":1587665205440},"3.0.0-beta.10":{"name":"parse-domain","version":"3.0.0-beta.10","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:smoke-test":"node ./build-cjs/src/smoke-test.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"is-ip":"^3.1.0","node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"4b21db71162f08b2e75edc0f31e4ae1d907cf94e","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.10","_nodeVersion":"12.16.1","_npmVersion":"6.14.4","dist":{"shasum":"f979df56952a3f324bf5318a278839656a0b45c0","size":81790,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.10.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.10_1587661804071_0.17757368910122096"},"_hasShrinkwrap":false,"publish_time":1587661804248,"_cnpm_publish_time":1587661804248},"3.0.0-beta.9":{"name":"parse-domain","version":"3.0.0-beta.9","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:smoke-test":"node ./build-cjs/src/smoke-test.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"f9db760f6b042478571ec9bf0b623e01d4181ea2","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.9","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"ac5964783b3a8a80e7675eb8358df0dd15256930","size":80530,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.9.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.9_1587394435518_0.5510773465710201"},"_hasShrinkwrap":false,"publish_time":1587394435723,"_cnpm_publish_time":1587394435723},"3.0.0-beta.8":{"name":"parse-domain","version":"3.0.0-beta.8","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:smoke-test":"node ./build-cjs/src/smoke-test.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"d5773c8414cb55f132728ef5fe694e8ec63ae311","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.8","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"8fbb13975e549e57a7e40ba0d43801b929e8f391","size":80475,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.8.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.8_1587394168929_0.859583348296469"},"_hasShrinkwrap":false,"publish_time":1587394169126,"_cnpm_publish_time":1587394169126},"3.0.0-beta.7":{"name":"parse-domain","version":"3.0.0-beta.7","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:smoke-test":"node ./build-cjs/src/smoke-test.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"93026952549c956b4a12e828e9f7df9ffd9c8a9a","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.7","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"768ff025ac05c3286cc1a28cc2a08c6488eef88e","size":80421,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.7.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.7_1587393726981_0.7259851674658866"},"_hasShrinkwrap":false,"publish_time":1587393727155,"_cnpm_publish_time":1587393727155},"3.0.0-beta.6":{"name":"parse-domain","version":"3.0.0-beta.6","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:smoke-test":"node ./build-cjs/src/smoke-test.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"4516b88a2ee400cb5a0c0b66b0db5faea56ac53e","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.6","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"972397a5c5998d597ffd01bbb8bb21565e748e74","size":80304,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.6.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.6_1587392590104_0.3002581026993021"},"_hasShrinkwrap":false,"publish_time":1587392590313,"_cnpm_publish_time":1587392590313},"3.0.0-beta.5":{"name":"parse-domain","version":"3.0.0-beta.5","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","build:smoke-test":"node ./build-cjs/src/smoke-test.js","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"cb097419a798c84cb46eba978d8ce1ad6dddefb4","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.5","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"6098e550e25edb4725dfbd167cc18ef314f94963","size":80198,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.5.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.5_1587391768657_0.4842510640258091"},"_hasShrinkwrap":false,"publish_time":1587391768789,"_cnpm_publish_time":1587391768789},"3.0.0-beta.4":{"name":"parse-domain","version":"3.0.0-beta.4","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"require":"./build-cjs/src/main.js","node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"0487ab2b4636b54e0aa7bbf42ff36c797072d7d2","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.4","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"4a13d73b6ef829ecf6057cb59a85f5ab76dcc9d0","size":79370,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.4.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.4_1587322283225_0.8256034647310098"},"_hasShrinkwrap":false,"publish_time":1587322284250,"_cnpm_publish_time":1587322284250},"3.0.0-beta.3":{"name":"parse-domain","version":"3.0.0-beta.3","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","keywords":["domain","url","sub-domain","tld","parse","sanitize","top-level"],"main":"./build-cjs/src/main.js","module":"./build-esm/src/main.js","exports":{"node":"./build-cjs/src/main.mjs","import":"./build-esm/src/main.js","require":"./build-cjs/src/main.js"},"scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","build:cpy":"cpy ./src/main.mjs ./build-cjs/src","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","sideEffects":false,"dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.2.1","@types/node":"^13.11.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","cpy-cli":"^3.1.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.6.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.2.7","nock":"^12.0.3","npm-run-all":"^4.1.5","prettier":"^2.0.2","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.3.1","ts-node":"^8.8.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"40a4f8fa03ce25b10df8e8ab0e5cb93edd3fcc22","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.3","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"b69549f4811eef800fa3b0dc8e062891189c7117","size":79206,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.3.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.3_1587321051038_0.8058386595733771"},"_hasShrinkwrap":false,"publish_time":1587321051181,"_cnpm_publish_time":1587321051181},"3.0.0-beta.2":{"name":"parse-domain","version":"3.0.0-beta.2","description":"Splits a hostname into subdomains, domain and (effective) top-level domains","main":"./build-cjs/main.js","scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"bin/update.js"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"node-fetch":"^2.6.0","punycode":"^2.1.1"},"devDependencies":{"@types/jest":"^25.1.4","@types/node":"^13.9.0","@types/node-fetch":"^2.5.5","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.23.0","@typescript-eslint/parser":"^2.23.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.5.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.1.0","nock":"^12.0.2","npm-run-all":"^4.1.5","prettier":"^1.19.1","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.2.1","ts-node":"^8.6.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"703107b013ef41f099254f19d715b83f15f6535b","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.2","_nodeVersion":"12.16.1","_npmVersion":"6.14.2","dist":{"shasum":"f4188de3d5a1b9e7cb9cef25d942bd9ccf70faf4","size":75002,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.2.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.2_1584272688596_0.5719253261391328"},"_hasShrinkwrap":false,"publish_time":1584272688819,"_cnpm_publish_time":1584272688819},"3.0.0-beta.1":{"name":"parse-domain","version":"3.0.0-beta.1","description":"Splits an url into sub-domain, domain and effective top-level domain","main":"./build-cjs/main.js","scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"build-esm/serialized-tries"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"isomorphic-fetch":"^2.2.1","punycode":"^2.1.1"},"devDependencies":{"@types/isomorphic-fetch":"0.0.35","@types/jest":"^25.1.4","@types/nock":"^11.1.0","@types/node":"^13.9.0","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.23.0","@typescript-eslint/parser":"^2.23.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.5.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.1.0","nock":"^12.0.2","npm-run-all":"^4.1.5","prettier":"^1.19.1","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.2.1","ts-node":"^8.6.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"49c681ddecdd460648a5cebff093987d76bed0ad","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@3.0.0-beta.1","_nodeVersion":"12.16.1","_npmVersion":"6.14.2","dist":{"shasum":"81577d6d4db33cb1b16dd42c251a719287fbcb44","size":5217,"noattachment":false,"key":"/parse-domain/-/parse-domain-3.0.0-beta.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-3.0.0-beta.1.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_3.0.0-beta.1_1584207913572_0.8206308617529838"},"_hasShrinkwrap":false,"publish_time":1584207913683,"_cnpm_publish_time":1584207913683},"2.4.0-beta.1":{"name":"parse-domain","version":"2.4.0-beta.1","description":"Splits an url into sub-domain, domain and effective top-level domain","main":"./build-cjs/main.js","scripts":{"test":"jest","posttest":"run-s build posttest:*","posttest:lint":"eslint *.js src bin --ext js,ts","build":"run-s build:*","build:cleanup":"rimraf build-cjs build-esm","build:tsc":"run-p build:tsc:cjs build:tsc:esm","build:tsc:cjs":"tsc -p ./tsconfig.build-cjs.json","build:tsc:esm":"tsc -p ./tsconfig.build-esm.json","update:psl-fixture":"ts-node --transpile-only ./src/scripts/update-psl-fixture.ts","update:tries":"ts-node --transpile-only ./src/scripts/update-tries.ts -- ../../serialized-tries","update:dependencies":"updtr"},"bin":{"parse-domain-update":"build-esm/serialized-tries"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"isomorphic-fetch":"^2.2.1","punycode":"^2.1.1"},"devDependencies":{"@types/isomorphic-fetch":"0.0.35","@types/jest":"^25.1.4","@types/nock":"^11.1.0","@types/node":"^13.9.0","@types/punycode":"^2.1.0","@typescript-eslint/eslint-plugin":"^2.23.0","@typescript-eslint/parser":"^2.23.0","eslint":"^6.8.0","eslint-config-peerigon":"^27.5.0","eslint-import-resolver-typescript":"^2.0.0","eslint-plugin-no-null":"^1.0.2","eslint-plugin-prefer-arrow":"^1.1.7","husky":"^4.2.3","jest":"^25.1.0","nock":"^12.0.2","npm-run-all":"^4.1.5","prettier":"^1.19.1","pretty-quick":"^2.0.1","rimraf":"^3.0.2","ts-jest":"^25.2.1","ts-node":"^8.6.2","typescript":"^3.8.3","updtr":"^3.1.0"},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}},"readmeFilename":"README.md","gitHead":"1f760338a698fabf018cdddadd19ed78451d6582","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.4.0-beta.1","_nodeVersion":"12.16.1","_npmVersion":"6.14.2","dist":{"shasum":"b4a83fb23e77c82e8a3ccc4878c3c511e4387786","size":5127,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.4.0-beta.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.4.0-beta.1.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"peeri","email":"developers@peerigon.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.4.0-beta.1_1584206801451_0.2414406068682915"},"_hasShrinkwrap":false,"publish_time":1584206801576,"_cnpm_publish_time":1584206801576},"2.3.4":{"name":"parse-domain","version":"2.3.4","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","types":"./src/index.d.ts","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"run-s build:tries","prepublish":"run-s build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"jest","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"got":"^8.3.2","jest":"^24.9.0","mkdirp":"^0.5.1","npm-run-all":"^4.1.5"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"9246927990982c4854e490785855c33d3217ac07","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.3.4","_nodeVersion":"12.6.0","_npmVersion":"6.9.0","dist":{"shasum":"acf46caab0f1b5412b95cdc01a74ba793db15a0d","size":238809,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.3.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.3.4.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.3.4_1572698328458_0.7101537849762867"},"_hasShrinkwrap":false,"publish_time":1572698328638,"_cnpm_publish_time":1572698328638},"2.3.3":{"name":"parse-domain","version":"2.3.3","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","types":"./src/index.d.ts","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"run-s build:tries","prepublish":"run-s build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"jest","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"got":"^8.3.2","jest":"^24.9.0","mkdirp":"^0.5.1","npm-run-all":"^4.1.5"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"6a145564ee94d36794f8f9ffefd11184a5c8ca3c","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.3.3","_nodeVersion":"12.6.0","_npmVersion":"6.9.0","dist":{"shasum":"08166f99584c41b4a873ce7d72875ad59be464fe","size":238805,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.3.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.3.3.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.3.3_1572694933275_0.17256104094082514"},"_hasShrinkwrap":false,"publish_time":1572694933497,"_cnpm_publish_time":1572694933497},"2.3.2":{"name":"parse-domain","version":"2.3.2","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","types":"./src/index.d.ts","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"run-s build:tries","prepublish":"run-s build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.2.0","got":"^8.3.2","mkdirp":"^0.5.1","mocha":"^6.1.4","npm-run-all":"^4.1.5"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","nyc":"^14.1.1","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"f7a1199f217a42317af90c379c883b89d6032cd4","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.3.2","_nodeVersion":"12.6.0","_npmVersion":"6.9.0","dist":{"shasum":"bda75c51bc919d91ea052dd0e37aa85eb7dc3787","size":235974,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.3.2.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.3.2_1565460650766_0.8737345169141804"},"_hasShrinkwrap":false,"publish_time":1565460651006,"_cnpm_publish_time":1565460651006},"2.3.1":{"name":"parse-domain","version":"2.3.1","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","types":"./src/index.d.ts","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"run-s build:tries","prepublish":"run-s build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.2.0","got":"^8.3.2","mkdirp":"^0.5.1","mocha":"^6.1.4","npm-run-all":"^4.1.5"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","nyc":"^14.1.1","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"bf49e72e4fe46eec9cd940ef84ced1be60b11e05","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.3.1","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"shasum":"fd3381f3245d6bf2c2f207393374527b2a4d5e3d","size":236108,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.3.1.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.3.1_1560531804146_0.41935038791335066"},"_hasShrinkwrap":false,"publish_time":1560531804304,"_cnpm_publish_time":1560531804304},"2.3.0":{"name":"parse-domain","version":"2.3.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","types":"./lib/index.d.ts","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"run-s build:tries","prepublish":"run-s build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.2.0","got":"^8.3.2","mkdirp":"^0.5.1","mocha":"^6.1.4","npm-run-all":"^4.1.5"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","nyc":"^14.1.1","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"88cdc198fbc9e19baa55d90a088928f3ed10a2ef","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.3.0","_npmVersion":"6.5.0","_nodeVersion":"11.8.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"d441638ff4029343d8995dc7bf13e0394b6fa28f","size":234279,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.3.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.3.0_1559130189307_0.8995007527114534"},"_hasShrinkwrap":false,"publish_time":1559130189475,"_cnpm_publish_time":1559130189475},"2.2.1":{"name":"parse-domain","version":"2.2.1","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"run-s build:tries","prepublish":"run-s build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.2.0","got":"^8.3.2","mkdirp":"^0.5.1","mocha":"^6.1.4","npm-run-all":"^4.1.5"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","nyc":"^14.1.1","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"7710b7422ea116cd8b972a086d8c9761cdb3eb70","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.2.1","_npmVersion":"6.5.0","_nodeVersion":"11.8.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"ae75ea560c60b4787ebe995a260e5b04548d998a","size":234126,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.2.1.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.2.1_1559047148874_0.7480326199209679"},"_hasShrinkwrap":false,"publish_time":1559047149001,"_cnpm_publish_time":1559047149001},"2.2.0":{"name":"parse-domain","version":"2.2.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"run-s build:tries","prepublish":"run-s build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.2.0","got":"^8.3.2","mkdirp":"^0.5.1","mocha":"^6.1.4"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","npm-run-all":"^4.1.5","nyc":"^14.1.1","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"d15444c4d063ac8f00a9abb077504f86070d6eb7","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.2.0","_npmVersion":"6.5.0","_nodeVersion":"11.8.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"be03b05c49e2944b25be3c06267955b544e3ee53","size":233937,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.2.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.2.0_1558995743741_0.565703303415714"},"_hasShrinkwrap":false,"publish_time":1558995743975,"_cnpm_publish_time":1558995743975,"deprecated":"2.2.0 is broken, see https://github.com/peerigon/parse-domain/issues/72"},"2.1.8":{"name":"parse-domain","version":"2.1.8","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"npm run build:tries","prepublish":"npm run build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.2.0","got":"^8.3.2","mkdirp":"^0.5.1","mocha":"^6.1.4"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","@babel/preset-env":"^7.4.4","eslint":"^5.16.0","eslint-config-peerigon":"^17.1.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jsdoc":"^4.8.4","npm-run-all":"^4.1.5","nyc":"^14.1.1","rimraf":"^2.6.3","standard-version":"^6.0.1","updtr":"^3.1.0"},"gitHead":"5234dbcbeee8156be645787f8b1cdadbece3f7a7","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.8","_npmVersion":"6.5.0","_nodeVersion":"11.8.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"edf9e47236d397c0a6ea043dddb116c83cf22099","size":233887,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.8.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.8_1558994278652_0.15756161719549344"},"_hasShrinkwrap":false,"publish_time":1558994278808,"_cnpm_publish_time":1558994278808},"2.1.7":{"name":"parse-domain","version":"2.1.7","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"npm run build:tries","prepublish":"npm run build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test","update":"updtr"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.2.0","got":"^8.3.2","mkdirp":"^0.5.1","mocha":"^5.2.0"},"devDependencies":{"@babel/cli":"^7.1.5","@babel/core":"^7.1.6","@babel/preset-env":"^7.1.6","eslint":"^5.9.0","eslint-config-peerigon":"^15.0.2","eslint-plugin-import":"^2.14.0","eslint-plugin-jsdoc":"^3.9.1","npm-run-all":"^4.1.5","nyc":"^13.1.0","rimraf":"^2.6.2","standard-version":"^4.4.0","updtr":"^3.1.0"},"gitHead":"bcba484437055fdfac41f52376e18b778a30e919","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.7","_npmVersion":"6.4.1","_nodeVersion":"10.12.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"db4d8ce30030917e20f387f2ff21dad56e11d58c","size":232438,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.7.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.7_1543320424912_0.400926708293458"},"_hasShrinkwrap":false,"publish_time":1543320425057,"_cnpm_publish_time":1543320425057},"2.1.6":{"name":"parse-domain","version":"2.1.6","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"npm run build:tries","prepublish":"npm run build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.1.2","got":"^8.0.1","mkdirp":"^0.5.1","mocha":"^4.0.1"},"devDependencies":{"@babel/cli":"7.0.0","@babel/core":"7.0.0","@babel/preset-env":"7.0.0","eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","npm-run-all":"^4.1.3","nyc":"^11.3.0","rimraf":"^2.6.2","standard-version":"^4.2.0"},"gitHead":"450a0a9cad8f018884ae538cddb0e49c49f4e0ba","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.6","_npmVersion":"6.4.1","_nodeVersion":"10.11.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"3baac0a1c6b7028dfea0013c99a83a1ecd806ed0","size":232359,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.6.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.6_1539950508946_0.12940879682546025"},"_hasShrinkwrap":false,"publish_time":1539950509130,"_cnpm_publish_time":1539950509130},"2.1.5":{"name":"parse-domain","version":"2.1.5","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"build":"run-s build:lib build:tries","build:lib":"run-s build:lib:clean build:lib:babel","build:lib:clean":"rimraf lib","build:lib:babel":"babel src --out-dir lib","build:tries":"node scripts/build-tries.js","postinstall":"npm run build:tries","prepublish":"npm run build","release":"standard-version","pretest":"run-s build:lib:clean pretest:link","pretest:link":"node scripts/link-src.js","test":"nyc mocha -R spec","posttest":"eslint src test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.1.2","got":"^8.0.1","mkdirp":"^0.5.1","mocha":"^4.0.1"},"devDependencies":{"@babel/cli":"7.0.0","@babel/core":"7.0.0","@babel/preset-env":"7.0.0","eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","npm-run-all":"^4.1.3","nyc":"^11.3.0","rimraf":"^2.6.2","standard-version":"^4.2.0"},"gitHead":"8f572b2f5173694210958751b974cd4123e6b54a","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.5","_npmVersion":"6.4.1","_nodeVersion":"10.11.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"911d24f43a11110ad1af942502bc979f92d62b4a","size":228083,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.5.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.5_1539948936000_0.07281732680538311"},"_hasShrinkwrap":false,"publish_time":1539948936156,"_cnpm_publish_time":1539948936156},"2.1.4":{"name":"parse-domain","version":"2.1.4","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"nyc mocha -R spec","posttest":"eslint lib test","postinstall":"node scripts/build-tries.js","prepare":"node scripts/build-tries.js","release":"standard-version"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.1.2","got":"^8.0.1","mkdirp":"^0.5.1","mocha":"^4.0.1"},"devDependencies":{"eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","nyc":"^11.3.0","standard-version":"^4.2.0"},"gitHead":"e75367a909cbe484473baf2e9b9820a2e16b1216","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.4","_npmVersion":"6.4.1","_nodeVersion":"10.11.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"31f06617643529c4973c5e8e74e7ce715fa6e5db","size":231396,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.4.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.4_1539939265779_0.3547604620631939"},"_hasShrinkwrap":false,"publish_time":1539939265922,"_cnpm_publish_time":1539939265922},"2.1.3":{"name":"parse-domain","version":"2.1.3","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"nyc mocha -R spec","posttest":"eslint lib test","postinstall":"node scripts/build-tries.js","prepare":"node scripts/build-tries.js","release":"standard-version"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.1.2","got":"^8.0.1","mkdirp":"^0.5.1","mocha":"^4.0.1"},"devDependencies":{"eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","nyc":"^11.3.0","standard-version":"^4.2.0"},"gitHead":"bd2868170e3ce20c5fd8a056e0c7896fc008ff5e","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.3","_npmVersion":"6.4.1","_nodeVersion":"10.11.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"16f747bd907bc68f52c0a388692f24c3b3281d0b","size":184050,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.3.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.3_1539938120912_0.5125972871718227"},"_hasShrinkwrap":false,"publish_time":1539938121084,"_cnpm_publish_time":1539938121084},"2.1.2":{"name":"parse-domain","version":"2.1.2","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"nyc mocha -R spec","posttest":"eslint lib test","postinstall":"node scripts/build-tries.js","prepare":"node scripts/write-pre.js","release":"standard-version"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.1.2","fs-copy-file-sync":"^1.1.1","got":"^8.0.1","mkdirp":"^0.5.1","mocha":"^4.0.1"},"devDependencies":{"eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","nyc":"^11.3.0","standard-version":"^4.2.0"},"files":["lib","scripts","lists","test","build/tries/pre"],"gitHead":"bcc24e2aa90000fbdc4bfc5b48f20cba75fafdee","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.2","_npmVersion":"6.1.0","_nodeVersion":"10.3.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"8c536bdecf7a9af01bb6d7ad30eb794791d6c2c7","size":231447,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.2.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.2_1528891371319_0.42392672774386053"},"_hasShrinkwrap":false,"publish_time":1528891371414,"_cnpm_publish_time":1528891371414},"2.1.1":{"name":"parse-domain","version":"2.1.1","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"nyc mocha -R spec","posttest":"eslint lib test","postinstall":"node scripts/build-tries.js","prepare":"node scripts/write-pre.js","release":"standard-version"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.1.2","fs-copy-file-sync":"^1.1.1","got":"^8.0.1","mkdirp":"^0.5.1","mocha":"^4.0.1"},"devDependencies":{"eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","nyc":"^11.3.0","standard-version":"^4.2.0"},"files":["lib","scripts","lists","test","build/tries/pre"],"gitHead":"4c599bbc713150ef8e112478b799d2d055261d01","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.1","_npmVersion":"6.1.0","_nodeVersion":"10.3.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"e3b4b423011b902367cf0685bc482f3afa673a4d","size":231378,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.1.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.1_1527682722433_0.5005215817927908"},"_hasShrinkwrap":false,"publish_time":1527682722567,"_cnpm_publish_time":1527682722567},"2.1.0":{"name":"parse-domain","version":"2.1.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"nyc mocha -R spec","posttest":"eslint lib test","postinstall":"node scripts/build-tries.js","release":"standard-version"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{"chai":"^4.1.2","fs-copy-file-sync":"^1.1.1","got":"^8.0.1","mkdirp":"^0.5.1","mocha":"^4.0.1"},"devDependencies":{"eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","nyc":"^11.3.0","standard-version":"^4.2.0"},"files":["lib","scripts","lists","test","build/tries/pre"],"gitHead":"86da1646bb4794426849ef40a10973b741d3f092","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.1.0","_npmVersion":"6.1.0","_nodeVersion":"10.3.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"d49c79464d88b42ed396736a089726fc336084ee","size":231278,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.1.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain_2.1.0_1527682665481_0.5594753849298011"},"_hasShrinkwrap":false,"publish_time":1527682665627,"_cnpm_publish_time":1527682665627},"2.0.0":{"name":"parse-domain","version":"2.0.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"nyc mocha -R spec","posttest":"eslint lib test","download-tld":"curl https://publicsuffix.org/list/public_suffix_list.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test","release":"standard-version"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{},"devDependencies":{"chai":"^4.1.2","eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","eslint-plugin-import":"^2.8.0","eslint-plugin-jsdoc":"^3.2.0","mocha":"^4.0.1","nyc":"^11.3.0","standard-version":"^4.2.0"},"files":["lib"],"gitHead":"01435580dcfb2684f784f7a4f6277ba08f81dd81","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@2.0.0","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"e9f42f697c30f7c2051dc5c55ff4d8a80da7943c","size":141498,"noattachment":false,"key":"/parse-domain/-/parse-domain-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-2.0.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain-2.0.0.tgz_1512265693206_0.4222627659328282"},"directories":{},"publish_time":1512265694478,"_cnpm_publish_time":1512265694478,"_hasShrinkwrap":false},"1.2.0":{"name":"parse-domain","version":"1.2.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"mocha -R spec","posttest":"eslint lib test","coverage":"istanbul cover ./node_modules/mocha/bin/_mocha","download-tld":"curl https://publicsuffix.org/list/public_suffix_list.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test","release":"standard-version"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{},"devDependencies":{"chai":"^4.1.2","eslint":"^4.12.1","eslint-config-peerigon":"^12.0.1","mocha":"^4.0.1","standard-version":"^4.2.0"},"gitHead":"42fdf1c4458c5b55c26f80049c2540b58bac156c","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@1.2.0","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"jhnns","email":"mail@johannesewald.de"},"dist":{"shasum":"f3a28f3e103fa9cff8a4761eb7208f9596f29bc9","size":136553,"noattachment":false,"key":"/parse-domain/-/parse-domain-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-1.2.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-domain-1.2.0.tgz_1512262922430_0.012704848544672132"},"directories":{},"publish_time":1512262923650,"_cnpm_publish_time":1512262923650,"_hasShrinkwrap":false},"1.1.0":{"name":"parse-domain","version":"1.1.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"mocha -R spec","posttest":"eslint lib test","coverage":"istanbul cover ./node_modules/mocha/bin/_mocha","download-tld":"curl https://publicsuffix.org/list/public_suffix_list.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{},"devDependencies":{"chai":"^3.5.0","eslint":"^3.15.0","eslint-config-peerigon":"^9.0.0","eslint-plugin-jsdoc":"^2.4.0","mocha":"^3.2.0"},"gitHead":"7ae8b3536130b502827f2d6336641f5b7ee508cd","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@1.1.0","_shasum":"6cb05bc9002552773bf7cc4c06dbd60dc939a973","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.1.0","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"dist":{"shasum":"6cb05bc9002552773bf7cc4c06dbd60dc939a973","size":136391,"noattachment":false,"key":"/parse-domain/-/parse-domain-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-1.1.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/parse-domain-1.1.0.tgz_1486509488762_0.14027911936864257"},"directories":{},"publish_time":1486509489401,"_cnpm_publish_time":1486509489401,"_hasShrinkwrap":false},"1.0.0":{"name":"parse-domain","version":"1.0.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"mocha -R spec","posttest":"eslint lib test","coverage":"istanbul cover ./node_modules/mocha/bin/_mocha","download-tld":"curl https://publicsuffix.org/list/public_suffix_list.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{},"devDependencies":{"chai":"^3.5.0","eslint":"^3.7.1","eslint-config-peerigon":"^6.0.0","eslint-plugin-jsdoc":"^2.3.1","mocha":"^3.1.2"},"gitHead":"ecd75393a712acb52a6cd61d9f603321e948c8ea","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@1.0.0","_shasum":"0e7d9e1e86682185171af16d303848bb49dfba3e","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.4.0","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"dist":{"shasum":"0e7d9e1e86682185171af16d303848bb49dfba3e","size":134345,"noattachment":false,"key":"/parse-domain/-/parse-domain-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-1.0.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/parse-domain-1.0.0.tgz_1476452792711_0.26590853091329336"},"directories":{},"publish_time":1476452793875,"_cnpm_publish_time":1476452793875,"_hasShrinkwrap":false},"0.3.0":{"name":"parse-domain","version":"0.3.0","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"mocha -R spec","download-tld":"curl https://publicsuffix.org/list/public_suffix_list.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{},"devDependencies":{"chai":"^3.5.0","mocha":"^3.1.0"},"gitHead":"525be70ecf5ac828a6ba19e7683a1b5ed7ac1ed2","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@0.3.0","_shasum":"9f1326f79c7cec1cbb1ca27effd0b914763cc774","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.4.0","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"dist":{"shasum":"9f1326f79c7cec1cbb1ca27effd0b914763cc774","size":101401,"noattachment":false,"key":"/parse-domain/-/parse-domain-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-0.3.0.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/parse-domain-0.3.0.tgz_1475545192216_0.5311893415637314"},"directories":{},"publish_time":1475545194278,"_cnpm_publish_time":1475545194278,"_hasShrinkwrap":false},"0.2.2":{"name":"parse-domain","version":"0.2.2","description":"Splits an url into sub-domain, domain and effective top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"mocha -R spec","download-tld":"curl https://publicsuffix.org/list/effective_tld_names.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{},"devDependencies":{"chai":"^3.5.0","mocha":"^3.1.0"},"gitHead":"b2ef3238549bf13ba5291024fae0bd90740e9685","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@0.2.2","_shasum":"188989b1e2e7398bff3c4f4fd7dca157eb51fac1","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.4.0","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"dist":{"shasum":"188989b1e2e7398bff3c4f4fd7dca157eb51fac1","size":97363,"noattachment":false,"key":"/parse-domain/-/parse-domain-0.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-0.2.2.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/parse-domain-0.2.2.tgz_1475544982899_0.6508180005475879"},"directories":{},"publish_time":1475544984726,"_cnpm_publish_time":1475544984726,"_hasShrinkwrap":false},"0.2.1":{"name":"parse-domain","version":"0.2.1","description":"Splits an url into sub-domain, domain and top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"mocha -R spec","download-tld":"curl https://publicsuffix.org/list/effective_tld_names.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","dependencies":{},"devDependencies":{"chai":"^3.5.0","mocha":"^2.4.5"},"gitHead":"e7af45caf1b4373d38d86f3a7d4346bfb55c6e3a","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@0.2.1","_shasum":"c95f86c3828a11cf3b15dffe97b6f0c6d1383852","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"dist":{"shasum":"c95f86c3828a11cf3b15dffe97b6f0c6d1383852","size":97447,"noattachment":false,"key":"/parse-domain/-/parse-domain-0.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-0.2.1.tgz"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"publish_time":1454258683875,"_cnpm_publish_time":1454258683875,"_hasShrinkwrap":false},"0.2.0":{"name":"parse-domain","version":"0.2.0","description":"Splits an url into sub-domain, domain and top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"node node_modules/mocha/bin/mocha -R spec","download-tld":"curl https://publicsuffix.org/list/effective_tld_names.dat > lib/build/tld.txt","build-regex":"node lib/build/buildRegex.js","update-regex":"npm run download-tld && npm run build-regex && npm run test"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"dependencies":{},"devDependencies":{"chai":"^3.4.0","mocha":"^2.3.3"},"repository":{"type":"git","url":"git+https://github.com/peerigon/parse-domain.git"},"testling":{"harness":"mocha","files":"test/parseDomain.test.js","browsers":["ie/8..latest","chrome/27..latest","firefox/22..latest","safari/latest","opera/latest","iphone/latest","ipad/latest","android-browser/latest"]},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","gitHead":"87d66bfd95213fbbc64c04b7ac068e0d908c616f","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain#readme","_id":"parse-domain@0.2.0","_shasum":"bf1d1a5c0f696006d6193f857f82e867a8881f4c","_from":".","_npmVersion":"2.14.3","_nodeVersion":"4.1.0","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"dist":{"shasum":"bf1d1a5c0f696006d6193f857f82e867a8881f4c","size":96522,"noattachment":false,"key":"/parse-domain/-/parse-domain-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-0.2.0.tgz"},"directories":{},"publish_time":1445683611335,"_cnpm_publish_time":1445683611335,"_hasShrinkwrap":false},"0.1.2":{"name":"parse-domain","version":"0.1.2","description":"Splits an url into sub-domain, domain and top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"node node_modules/mocha/bin/mocha -R spec","build-regex":"node lib/build/buildRegex.js"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"dependencies":{},"devDependencies":{"mocha":"1.x","chai":"1.x"},"repository":{"type":"git","url":"https://github.com/peerigon/parse-domain.git"},"testling":{"harness":"mocha","files":"test/parseDomain.test.js","browsers":["ie/8..latest","chrome/27..latest","firefox/22..latest","safari/latest","opera/latest","iphone/latest","ipad/latest","android-browser/latest"]},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain","_id":"parse-domain@0.1.2","dist":{"shasum":"6540f35a4ed42719763675963ffa18c4aee65bc2","size":74391,"noattachment":false,"key":"/parse-domain/-/parse-domain-0.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-0.1.2.tgz"},"_from":".","_npmVersion":"1.3.17","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"publish_time":1400600729751,"_cnpm_publish_time":1400600729751,"_hasShrinkwrap":false},"0.1.1":{"name":"parse-domain","version":"0.1.1","description":"Splits an url into sub-domain, domain and top-level-domain","main":"./lib/parseDomain.js","scripts":{"test":"node node_modules/mocha/bin/mocha -R spec"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"dependencies":{},"devDependencies":{"mocha":"1.x","chai":"1.x"},"repository":{"type":"git","url":"https://github.com/peerigon/parse-domain.git"},"testling":{"harness":"mocha","files":"test/parseDomain.test.js","browsers":["ie/8..latest","chrome/27..latest","firefox/22..latest","safari/latest","opera/latest","iphone/latest","ipad/latest","android-browser/latest"]},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain","_id":"parse-domain@0.1.1","dist":{"shasum":"0054569f22964fa8ab06ddd5edeff0a49efccdd8","size":74071,"noattachment":false,"key":"/parse-domain/-/parse-domain-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-0.1.1.tgz"},"_from":".","_npmVersion":"1.3.17","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"publish_time":1400158926519,"_cnpm_publish_time":1400158926519,"_hasShrinkwrap":false},"0.1.0":{"name":"parse-domain","version":"0.1.0","description":"Finds the sub-domain, domain and top-level-domain from an url","main":"./lib/parseDomain.js","scripts":{"test":"node node_modules/mocha/bin/mocha -R spec"},"keywords":["domain","url","sub-domain","tld","parse","extract","sanitize","country","top-level"],"dependencies":{},"devDependencies":{"mocha":"1.x","chai":"1.x"},"repository":{"type":"git","url":"https://github.com/peerigon/parse-domain.git"},"testling":{"harness":"mocha","files":"test/parseDomain.test.js","browsers":["ie/8..latest","chrome/27..latest","firefox/22..latest","safari/latest","opera/latest","iphone/latest","ipad/latest","android-browser/latest"]},"author":{"name":"peerigon","email":"developers@peerigon.com"},"license":"Unlicense","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"homepage":"https://github.com/peerigon/parse-domain","_id":"parse-domain@0.1.0","dist":{"shasum":"d93c304ad3f0d163a7d847968593e2216c1114ea","size":74006,"noattachment":false,"key":"/parse-domain/-/parse-domain-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/parse-domain/download/parse-domain-0.1.0.tgz"},"_from":".","_npmVersion":"1.3.17","_npmUser":{"name":"peerigon","email":"developers@peerigon.com"},"maintainers":[{"name":"antosan","email":"sandeantony@gmail.com"},{"name":"hpohlmeyer","email":"info@prophet-design.de"},{"name":"jhnns","email":"mail@johannesewald.de"},{"name":"leomelzer","email":"leonhard.melzer@peerigon.com"},{"name":"matthaias","email":"matthias.jahn@peerigon.com"},{"name":"meaku","email":"michael.jaser@peerigon.com"},{"name":"moritzjacobs","email":"mail@moritzjacobs.de"},{"name":"peeri","email":""},{"name":"thois","email":""}],"directories":{},"publish_time":1400056810830,"_cnpm_publish_time":1400056810830,"_hasShrinkwrap":false}},"readme":"# parse-domain\n\n**Splits a hostname into subdomains, domain and (effective) top-level domains.**\n\n[![Version on NPM](https://img.shields.io/npm/v/parse-domain?style=for-the-badge)](https://www.npmjs.com/package/parse-domain)\n[![Semantically released](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge)](https://github.com/semantic-release/semantic-release)\n[![Monthly downloads on NPM](https://img.shields.io/npm/dm/parse-domain?style=for-the-badge)](https://www.npmjs.com/package/parse-domain)<br>\n[![NPM Bundle size minified](https://img.shields.io/bundlephobia/min/parse-domain?style=for-the-badge)](https://bundlephobia.com/result?p=parse-domain)\n[![NPM Bundle size minified and gzipped](https://img.shields.io/bundlephobia/minzip/parse-domain?style=for-the-badge)](https://bundlephobia.com/result?p=parse-domain)<br>\n[![License](https://img.shields.io/npm/l/parse-domain?style=for-the-badge)](./LICENSE)\n\nSince domain name registrars organize their namespaces in different ways, it's not straight-forward to split a hostname into subdomains, the domain and top-level domains. In order to do that **parse-domain** uses a [large list of known top-level domains](https://publicsuffix.org/list/public_suffix_list.dat) from [publicsuffix.org](https://publicsuffix.org/):\n\n```javascript\nimport { parseDomain, ParseResultType } from \"parse-domain\";\n\nconst parseResult = parseDomain(\n  // This should be a string with basic latin letters only.\n  // More information below.\n  \"www.some.example.co.uk\"\n);\n\n// Check if the domain is listed in the public suffix list\nif (parseResult.type === ParseResultType.Listed) {\n  const { subDomains, domain, topLevelDomains } = parseResult;\n\n  console.log(subDomains); // [\"www\", \"some\"]\n  console.log(domain); // \"example\"\n  console.log(topLevelDomains); // [\"co\", \"uk\"]\n} else {\n  // Read more about other parseResult types below...\n}\n```\n\nThis package has been designed for modern Node and browser environments with ECMAScript modules support. It assumes an ES2015 environment with [`Symbol()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol), [`URL()`](https://developer.mozilla.org/en-US/docs/Web/API/URL) and [`TextDecoder()`](https://developer.mozilla.org/en-US/docs/Web/API/TextEncoder) globally available. You need to transpile it down to ES5 (e.g. by using [Babel](https://babeljs.io/)) if you need to support older environments.\n\nThe list of top-level domains is stored in a [trie](https://en.wikipedia.org/wiki/Trie) data structure and serialization format to ensure the fastest lookup and the smallest possible library size.\n\n<br />\n\n## Installation\n\n```sh\nnpm install parse-domain\n```\n\n## Updates\n\n???? **Please note:** [publicsuffix.org](https://publicsuffix.org/) is updated several times per month. This package comes with a prebuilt list that has been downloaded at the time of `npm publish`. In order to get an up-to-date list, you should run `npx parse-domain-update` everytime you start or build your application. This will download the latest list from `https://publicsuffix.org/list/public_suffix_list.dat`.\n\n<br />\n\n## Expected input\n\n**⚠️ [`parseDomain`](#api-js-parseDomain) does not parse whole URLs**. You should only pass the [puny-encoded](https://en.wikipedia.org/wiki/Punycode) hostname section of the URL:\n\n| ❌ Wrong                                       | ✅ Correct           |\n| ---------------------------------------------- | -------------------- |\n| `https://user@www.example.com:8080/path?query` | `www.example.com`    |\n| `münchen.de`                                   | `xn--mnchen-3ya.de`  |\n| `食狮.com.cn?query`                            | `xn--85x722f.com.cn` |\n\nThere is the utility function [`fromUrl`](#api-js-fromUrl) which tries to extract the hostname from a (partial) URL and puny-encodes it:\n\n```javascript\nimport { parseDomain, fromUrl } from \"parse-domain\";\n\nconst { subDomains, domain, topLevelDomains } = parseDomain(\n  fromUrl(\"https://www.münchen.de?query\")\n);\n\nconsole.log(subDomains); // [\"www\"]\nconsole.log(domain); // \"xn--mnchen-3ya\"\nconsole.log(topLevelDomains); // [\"de\"]\n\n// You can use the 'punycode' NPM package to decode the domain again\nimport { toUnicode } from \"punycode\";\n\nconsole.log(toUnicode(domain)); // \"münchen\"\n```\n\n[`fromUrl`](#api-js-fromUrl) parses the URL using [`new URL()`](https://developer.mozilla.org/en-US/docs/Web/API/URL). Depending on your target environments you need to make sure that there is a [polyfill](https://www.npmjs.com/package/whatwg-url) for it. It's globally available in [all modern browsers](https://caniuse.com/#feat=url) (no IE) and in [Node v10](https://nodejs.org/api/url.html#url_class_url).\n\n## Expected output\n\nWhen parsing a hostname there are 5 possible results:\n\n- invalid\n- it is an ip address\n- it is formally correct and the domain is\n  - reserved\n  - not listed in the public suffix list\n  - listed in the public suffix list\n\n[`parseDomain`](#api-js-parseDomain) returns a [`ParseResult`](#api-ts-ParseResult) with a `type` property that allows to distinguish these cases.\n\n### ???? Invalid domains\n\nThe given input is first validated against [RFC 3696](https://datatracker.ietf.org/doc/html/rfc3696#section-2) (the domain labels are limited to basic latin letters, numbers and hyphens). If the validation fails, `parseResult.type` will be `ParseResultType.Invalid`:\n\n```javascript\nimport { parseDomain, ParseResultType } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"münchen.de\");\n\nconsole.log(parseResult.type === ParseResultType.Invalid); // true\n```\n\nCheck out the [API](#api-ts-ValidationError) if you need more information about the validation error.\n\nIf you don't want the characters to be validated (e.g. because you need to allow underscores in hostnames), there's also a more relaxed validation mode (according to [RFC 2181](https://www.rfc-editor.org/rfc/rfc2181#section-11)).\n\n```javascript\nimport { parseDomain, ParseResultType, Validation } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"_jabber._tcp.gmail.com\", {\n  validation: Validation.Lax,\n});\n\nconsole.log(parseResult.type === ParseResultType.Listed); // true\n```\n\nSee also [#134](https://github.com/peerigon/parse-domain/issues/134) for the discussion.\n\n### ???? IP addresses\n\nIf the given input is an IP address, `parseResult.type` will be `ParseResultType.Ip`:\n\n```javascript\nimport { parseDomain, ParseResultType } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"192.168.2.1\");\n\nconsole.log(parseResult.type === ParseResultType.Ip); // true\nconsole.log(parseResult.ipVersion); // 4\n```\n\nIt's debatable if a library for parsing domains should also accept IP addresses. In fact, you could argue that [`parseDomain`](#api-js-parseDomain) should reject an IP address as invalid. While this is true from a technical point of view, we decided to report IP addresses in a special way because we assume that a lot of people are using this library to make sense from an arbitrary hostname (see [#102](https://github.com/peerigon/parse-domain/issues/102)).\n\n### ???? Reserved domains\n\nThere are 5 top-level domains that are not listed in the public suffix list but reserved according to [RFC 6761](https://tools.ietf.org/html/rfc6761) and [RFC 6762](https://tools.ietf.org/html/rfc6762):\n\n- `localhost`\n- `local`\n- `example`\n- `invalid`\n- `test`\n\nIn these cases, `parseResult.type` will be `ParseResultType.Reserved`:\n\n```javascript\nimport { parseDomain, ParseResultType } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"pecorino.local\");\n\nconsole.log(parseResult.type === ParseResultType.Reserved); // true\nconsole.log(parseResult.labels); // [\"pecorino\", \"local\"]\n```\n\n### ???? Domains that are not listed\n\nIf the given hostname is valid, but not listed in the downloaded public suffix list, `parseResult.type` will be `ParseResultType.NotListed`:\n\n```javascript\nimport { parseDomain, ParseResultType } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"this.is.not-listed\");\n\nconsole.log(parseResult.type === ParseResultType.NotListed); // true\nconsole.log(parseResult.labels); // [\"this\", \"is\", \"not-listed\"]\n```\n\nIf a domain is not listed, it can be caused by an outdated list. Make sure to [update the list once in a while](#installation).\n\n⚠️ **Do not treat parseDomain as authoritative answer.** It cannot replace a real DNS lookup to validate if a given domain is known in a certain network.\n\n### ???? Effective top-level domains\n\nTechnically, the term _top-level domain_ describes the very last domain in a hostname (`uk` in `example.co.uk`). Most people, however, use the term _top-level domain_ for the _public suffix_ which is a namespace [\"under which Internet users can directly register names\"](https://publicsuffix.org/).\n\nSome examples for public suffixes:\n\n- `com` in `example.com`\n- `co.uk` in `example.co.uk`\n- `co` in `example.co`\n- but also `com.co` in `example.com.co`\n\nIf the hostname is listed in the public suffix list, the `parseResult.type` will be `ParseResultType.Listed`:\n\n```javascript\nimport { parseDomain, ParseResultType } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"example.co.uk\");\n\nconsole.log(parseResult.type === ParseResultType.Listed); // true\nconsole.log(parseResult.labels); // [\"example\", \"co\", \"uk\"]\n```\n\nNow `parseResult` will also provide a `subDomains`, `domain` and `topLevelDomains` property:\n\n```javascript\nconst { subDomains, domain, topLevelDomains } = parseResult;\n\nconsole.log(subDomains); // []\nconsole.log(domain); // \"example\"\nconsole.log(topLevelDomains); // [\"co\", \"uk\"]\n```\n\n### ???? Switch over `parseResult.type` to distinguish between different parse results\n\nWe recommend switching over the `parseResult.type`:\n\n```javascript\nswitch (parseResult.type) {\n  case ParseResultType.Listed: {\n    const { hostname, topLevelDomains } = parseResult;\n\n    console.log(`${hostname} belongs to ${topLevelDomains.join(\".\")}`);\n    break;\n  }\n  case ParseResultType.Reserved:\n  case ParseResultType.NotListed: {\n    const { hostname } = parseResult;\n\n    console.log(`${hostname} is a reserved or unknown domain`);\n    break;\n  }\n  default:\n    throw new Error(`${hostname} is an ip address or invalid domain`);\n}\n```\n\n### ⚠️ Effective TLDs !== TLDs acknowledged by ICANN\n\nWhat's surprising to a lot of people is that the definition of public suffix means that regular user domains can become effective top-level domains:\n\n```javascript\nconst { subDomains, domain, topLevelDomains } = parseDomain(\n  \"parse-domain.github.io\"\n);\n\nconsole.log(subDomains); // []\nconsole.log(domain); // \"parse-domain\"\nconsole.log(topLevelDomains); // [\"github\", \"io\"] ????\n```\n\nIn this case, `github.io` is nothing else than a private domain name registrar. `github.io` is the _effective_ top-level domain and browsers are treating it like that (e.g. for setting [`document.domain`](https://developer.mozilla.org/en-US/docs/Web/API/Document/domain)).\n\nIf you want to deviate from the browser's understanding of a top-level domain and you're only interested in top-level domains acknowledged by [ICANN](https://en.wikipedia.org/wiki/ICANN), there's an `icann` property:\n\n```javascript\nconst parseResult = parseDomain(\"parse-domain.github.io\");\nconst { subDomains, domain, topLevelDomains } = parseResult.icann;\n\nconsole.log(subDomains); // [\"parse-domain\"]\nconsole.log(domain); // \"github\"\nconsole.log(topLevelDomains); // [\"io\"]\n```\n\n### ⚠️ `domain` can also be `undefined`\n\n```javascript\nconst { subDomains, domain, topLevelDomains } = parseDomain(\"co.uk\");\n\nconsole.log(subDomains); // []\nconsole.log(domain); // undefined\nconsole.log(topLevelDomains); // [\"co\", \"uk\"]\n```\n\n### ⚠️ `\"\"` is a valid (but reserved) domain\n\nThe empty string `\"\"` represents the [DNS root](https://en.wikipedia.org/wiki/DNS_root_zone) and is considered to be valid. `parseResult.type` will be `ParseResultType.Reserved` in that case:\n\n```javascript\nconst { type, subDomains, domain, topLevelDomains } = parseDomain(\"\");\n\nconsole.log(type === ParseResultType.Reserved); // true\nconsole.log(subDomains); // []\nconsole.log(domain); // undefined\nconsole.log(topLevelDomains); // []\n```\n\n## API\n\n???? = JavaScript export<br>\n???? = TypeScript export\n\n<h3 id=\"api-js-parseDomain\">\n???? <code>export parseDomain(hostname: string | typeof <a href=\"#api-js-NO_HOSTNAME\">NO_HOSTNAME</a>, options?: <a href=\"#api-ts-ParseDomainOptions\">ParseDomainOptions</a>): <a href=\"#api-ts-ParseResult\">ParseResult</a></code>\n</h3>\n\nTakes a hostname (e.g. `\"www.example.com\"`) and returns a [`ParseResult`](#api-ts-ParseResult). The hostname must only contain basic latin letters, digits, hyphens and dots. International hostnames must be puny-encoded. Does not throw an error, even with invalid input.\n\n```javascript\nimport { parseDomain } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"www.example.com\");\n```\n\nUse `Validation.Lax` if you want to allow all characters:\n\n```javascript\nimport { parseDomain, Validation } from \"parse-domain\";\n\nconst parseResult = parseDomain(\"_jabber._tcp.gmail.com\", {\n  validation: Validation.Lax,\n});\n```\n\n<h3 id=\"api-js-fromUrl\">\n???? <code>export fromUrl(input: string): string | typeof <a href=\"#api-js-NO_HOSTNAME\">NO_HOSTNAME</a></code>\n</h3>\n\nTakes a URL-like string and tries to extract the hostname. Requires the global [`URL` constructor](https://developer.mozilla.org/en-US/docs/Web/API/URL) to be available on the platform. Returns the [`NO_HOSTNAME`](#api-js-NO_HOSTNAME) symbol if the input was not a string or the hostname could not be extracted. Take a look [at the test suite](/src/from-url.test.ts) for some examples. Does not throw an error, even with invalid input.\n\n<h3 id=\"api-js-NO_HOSTNAME\">\n???? <code>export NO_HOSTNAME: unique symbol</code>\n</h3>\n\n`NO_HOSTNAME` is a symbol that is returned by [`fromUrl`](#api-js-fromUrl) when it was not able to extract a hostname from the given string. When passed to [`parseDomain`](#api-js-parseDomain), it will always yield a [`ParseResultInvalid`](#api-ts-ParseResultInvalid).\n\n<h3 id=\"api-ts-ParseDomainOptions\">\n???? <code>export type ParseDomainOptions</code>\n</h3>\n\n```ts\nexport type ParseDomainOptions = {\n  /**\n   * If no validation is specified, Validation.Strict will be used.\n   **/\n  validation?: Validation;\n};\n```\n\n<h3 id=\"api-js-Validation\">\n???? <code>export Validation</code>\n</h3>\n\nAn object that holds all possible [Validation](#api-ts-Validation) `validation` values:\n\n```javascript\nexport const Validation = {\n  /**\n   * Allows any octets as labels\n   * but still restricts the length of labels and the overall domain.\n   *\n   * @see https://www.rfc-editor.org/rfc/rfc2181#section-11\n   **/\n  Lax: \"LAX\",\n\n  /**\n   * Only allows ASCII letters, digits and hyphens (aka LDH),\n   * forbids hyphens at the beginning or end of a label\n   * and requires top-level domain names not to be all-numeric.\n   *\n   * This is the default if no validation is configured.\n   *\n   * @see https://datatracker.ietf.org/doc/html/rfc3696#section-2\n   */\n  Strict: \"STRICT\",\n};\n```\n\n<h3 id=\"api-ts-Validation\">\n???? <code>export Validation</code>\n</h3>\n\nThis type represents all possible `validation` values.\n\n<h3 id=\"api-ts-ParseResult\">\n???? <code>export ParseResult</code>\n</h3>\n\nA `ParseResult` is either a [`ParseResultInvalid`](#api-ts-ParseResultInvalid), [`ParseResultIp`](#api-ts-ParseResultIp), [`ParseResultReserved`](#api-ts-ParseResultReserved), [`ParseResultNotListed`](#api-ts-ParseResultNotListed) or [`ParseResultListed`](#api-ts-ParseResultListed).\n\nAll parse results have a `type` property that is either `\"INVALID\"`, `\"IP\"`,`\"RESERVED\"`,`\"NOT_LISTED\"`or`\"LISTED\"`. Use the exported [ParseResultType](#api-js-ParseResultType) to check for the type instead of checking against string literals.\n\nAll parse results also have a `hostname` property that provides access to the sanitized hostname that was passed to [`parseDomain`](#api-js-parseDomain).\n\n<h3 id=\"api-js-ParseResultType\">\n???? <code>export ParseResultType</code>\n</h3>\n\nAn object that holds all possible [ParseResult](#api-ts-ParseResult) `type` values:\n\n```javascript\nconst ParseResultType = {\n  Invalid: \"INVALID\",\n  Ip: \"IP\",\n  Reserved: \"RESERVED\",\n  NotListed: \"NOT_LISTED\",\n  Listed: \"LISTED\",\n};\n```\n\n<h3 id=\"api-ts-ParseResultType\">\n???? <code>export ParseResultType</code>\n</h3>\n\nThis type represents all possible [ParseResult](#api-ts-ParseResult) `type` values.\n\n<h3 id=\"api-ts-ParseResultInvalid\">\n???? <code>export ParseResultInvalid</code>\n</h3>\n\nDescribes the shape of the parse result that is returned when the given hostname does not adhere to [RFC 1034](https://tools.ietf.org/html/rfc1034):\n\n- The hostname is not a string\n- The hostname is longer than 253 characters\n- A domain label is shorter than 1 character\n- A domain label is longer than 63 characters\n- A domain label contains a character that is not a basic latin character, digit or hyphen\n\n```ts\ntype ParseResultInvalid = {\n  type: ParseResultType.INVALID;\n  hostname: string | typeof NO_HOSTNAME;\n  errors: Array<ValidationError>;\n};\n\n// Example\n\n{\n  type: \"INVALID\",\n  hostname: \".com\",\n  errors: [...]\n}\n```\n\n<h3 id=\"api-ts-ValidationError\">\n???? <code>export ValidationError</code>\n</h3>\n\nDescribes the shape of a validation error as returned by [`parseDomain`](#api-js-parseDomain)\n\n```ts\ntype ValidationError = {\n  type: ValidationErrorType;\n  message: string;\n  column: number;\n};\n\n// Example\n\n{\n  type: \"LABEL_MIN_LENGTH\",\n  message: `Label \"\" is too short. Label is 0 octets long but should be at least 1.`,\n  column: 1,\n}\n```\n\n<h3 id=\"api-js-ValidationErrorType\">\n???? <code>export ValidationErrorType</code>\n</h3>\n\nAn object that holds all possible [ValidationError](#api-ts-ValidationError) `type` values:\n\n```javascript\nconst ValidationErrorType = {\n  NoHostname: \"NO_HOSTNAME\",\n  DomainMaxLength: \"DOMAIN_MAX_LENGTH\",\n  LabelMinLength: \"LABEL_MIN_LENGTH\",\n  LabelMaxLength: \"LABEL_MAX_LENGTH\",\n  LabelInvalidCharacter: \"LABEL_INVALID_CHARACTER\",\n  LastLabelInvalid: \"LAST_LABEL_INVALID\",\n};\n```\n\n<h3 id=\"api-ts-ValidationErrorType\">\n???? <code>export ValidationErrorType</code>\n</h3>\n\nThis type represents all possible `type` values of a [ValidationError](#api-ts-ValidationError).\n\n<h3 id=\"api-ts-ParseResultIp\">\n???? <code>export ParseResultIp</code>\n</h3>\n\nThis type describes the shape of the parse result that is returned when the given hostname was an IPv4 or IPv6 address.\n\n```ts\ntype ParseResultIp = {\n  type: ParseResultType.Ip;\n  hostname: string;\n  ipVersion: 4 | 6;\n};\n\n// Example\n\n{\n  type: \"IP\",\n  hostname: \"192.168.0.1\",\n  ipVersion: 4\n}\n```\n\nAccording to [RFC 3986](https://tools.ietf.org/html/rfc3986#section-3.2.2), IPv6 addresses need to be surrounded by `[` and `]` in URLs. [`parseDomain`](#api-js-parseDomain) accepts both IPv6 address with and without square brackets:\n\n```js\n// Recognized as IPv4 address\nparseDomain(\"192.168.0.1\");\n// Both are recognized as proper IPv6 addresses\nparseDomain(\"::\");\nparseDomain(\"[::]\");\n```\n\n<h3 id=\"api-ts-ParseResultReserved\">\n???? <code>export ParseResultReserved</code>\n</h3>\n\nThis type describes the shape of the parse result that is returned when the given hostname\n\n- is the root domain (the empty string `\"\"`)\n- belongs to the top-level domain `localhost`, `local`, `example`, `invalid` or `test`\n\n```ts\ntype ParseResultReserved = {\n  type: ParseResultType.Reserved;\n  hostname: string;\n  labels: Array<string>;\n};\n\n// Example\n\n{\n  type: \"RESERVED\",\n  hostname: \"pecorino.local\",\n  labels: [\"pecorino\", \"local\"]\n}\n```\n\n⚠️ Reserved IPs, such as `127.0.0.1`, will not be reported as reserved, but as <a href=\"#-export-parseresultip\">`ParseResultIp`</a>. See [#117](https://github.com/peerigon/parse-domain/issues/117).\n\n<h3 id=\"api-ts-ParseResultNotListed\">\n???? <code>export ParseResultNotListed</code>\n</h3>\n\nDescribes the shape of the parse result that is returned when the given hostname is valid and does not belong to a reserved top-level domain, but is not listed in the downloaded public suffix list.\n\n```ts\ntype ParseResultNotListed = {\n  type: ParseResultType.NotListed;\n  hostname: string;\n  labels: Array<string>;\n};\n\n// Example\n\n{\n  type: \"NOT_LISTED\",\n  hostname: \"this.is.not-listed\",\n  labels: [\"this\", \"is\", \"not-listed\"]\n}\n```\n\n<h3 id=\"api-ts-ParseResultListed\">\n???? <code>export ParseResultListed</code>\n</h3>\n\nDescribes the shape of the parse result that is returned when the given hostname belongs to a top-level domain that is listed in the public suffix list.\n\n```ts\ntype ParseResultListed = {\n  type: ParseResultType.Listed;\n  hostname: string;\n  labels: Array<string>;\n  subDomains: Array<string>;\n  domain: string | undefined;\n  topLevelDomains: Array<string>;\n  icann: {\n    subDomains: Array<string>;\n    domain: string | undefined;\n    topLevelDomains: Array<string>;\n  };\n};\n\n// Example\n\n{\n  type: \"LISTED\",\n  hostname: \"parse-domain.github.io\",\n  labels: [\"parse-domain\", \"github\", \"io\"]\n  subDomains: [],\n  domain: \"parse-domain\",\n  topLevelDomains: [\"github\", \"io\"],\n  icann: {\n    subDomains: [\"parse-domain\"],\n    domain: \"github\",\n    topLevelDomains: [\"io\"]\n  }\n}\n```\n\n## License\n\nMIT\n\n## Sponsors\n\n[<img src=\"https://assets.peerigon.com/peerigon/logo/peerigon-logo-flat-spinat.png\" width=\"150\" />](https://peerigon.com)\n","_attachments":{},"homepage":"https://github.com/peerigon/parse-domain#readme","bugs":{"url":"https://github.com/peerigon/parse-domain/issues"},"license":"MIT"}