1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
-
- "use strict";
- var pubsuffix = require('./pubsuffix-psl');
-
-
-
- function permuteDomain (domain) {
- var pubSuf = pubsuffix.getPublicSuffix(domain);
- if (!pubSuf) {
- return null;
- }
- if (pubSuf == domain) {
- return [domain];
- }
-
- var prefix = domain.slice(0, -(pubSuf.length + 1));
- var parts = prefix.split('.').reverse();
- var cur = pubSuf;
- var permutations = [cur];
- while (parts.length) {
- cur = parts.shift() + '.' + cur;
- permutations.push(cur);
- }
- return permutations;
- }
-
- exports.permuteDomain = permuteDomain;
|