diff options
Diffstat (limited to 'vanilla/node_modules/tldts-core/src/options.ts')
| -rw-r--r-- | vanilla/node_modules/tldts-core/src/options.ts | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/vanilla/node_modules/tldts-core/src/options.ts b/vanilla/node_modules/tldts-core/src/options.ts new file mode 100644 index 0000000..520e21c --- /dev/null +++ b/vanilla/node_modules/tldts-core/src/options.ts @@ -0,0 +1,39 @@ +export interface IOptions { + allowIcannDomains: boolean; + allowPrivateDomains: boolean; + detectIp: boolean; + extractHostname: boolean; + mixedInputs: boolean; + validHosts: string[] | null; + validateHostname: boolean; +} + +function setDefaultsImpl({ + allowIcannDomains = true, + allowPrivateDomains = false, + detectIp = true, + extractHostname = true, + mixedInputs = true, + validHosts = null, + validateHostname = true, +}: Partial<IOptions>): IOptions { + return { + allowIcannDomains, + allowPrivateDomains, + detectIp, + extractHostname, + mixedInputs, + validHosts, + validateHostname, + }; +} + +const DEFAULT_OPTIONS = /*@__INLINE__*/ setDefaultsImpl({}); + +export function setDefaults(options?: Partial<IOptions>): IOptions { + if (options === undefined) { + return DEFAULT_OPTIONS; + } + + return /*@__INLINE__*/ setDefaultsImpl(options); +} |
