@cleandns/whois-rdap 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cleandns/whois-rdap",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -6,7 +6,7 @@ export const port43parsers: Record<
6
6
  (response: string, record: WhoisResponse) => void
7
7
  > = {
8
8
  rs(response, record) {
9
- response = response.replace(/\r/g, '');
9
+ response = response.replace(/\r/g, "");
10
10
 
11
11
  let m;
12
12
 
@@ -39,6 +39,117 @@ export const port43parsers: Record<
39
39
  record.nameservers.push(m[1].toLowerCase());
40
40
  });
41
41
  },
42
+
43
+ nl(response, record) {
44
+ let m;
45
+
46
+ (m = response.match(/^Registrar:\s+(\S[^\n]*)/m)) &&
47
+ (record.registrar.name = m[1]);
48
+ (m = response.match(/^Reseller:\s+(\S[^\n]*)/m)) &&
49
+ (record.reseller = m[1]);
50
+ (m = response.match(/^Status:[ \t]*(\S[^\n]+)/m)) &&
51
+ (record.status = [m[1]]);
52
+ (m = response.match(/^Domain nameservers:[ \t]*\n((?:\S+\n)+)/m)) &&
53
+ (record.nameservers = m[1].trim().split(/\s+/));
54
+ (m = response.match(/^Creat\w* Date: (\d\d\d\d-\d\d-\d\d)/m)) &&
55
+ (record.ts.created = new Date(m[1]));
56
+ (m = response.match(/^Updat\w* Date: (\d\d\d\d-\d\d-\d\d)/m)) &&
57
+ (record.ts.updated = new Date(m[1]));
58
+ (m = response.match(/^Expir\w* Date: (\d\d\d\d-\d\d-\d\d)/m)) &&
59
+ (record.ts.expires = new Date(m[1]));
60
+ },
61
+
62
+ kr(response, record) {
63
+ let m;
64
+
65
+ (m = response.match(/^Authorized Agency\s*: (.*?)(?=\(http|$)/m)) &&
66
+ (record.registrar.name = m[1]);
67
+ // (m = response.match(/^Reseller:\s+(\S[^\n]*)/m)) && (record.reseller = m[1]);
68
+ (m = response.match(/^Domain Status\s*: [ \t]*(\S[^\n]+)/m)) &&
69
+ (record.status = m[1].trim().split(/\s+/));
70
+ (m = response.matchAll(/^Host Name\s*: (\S+)/gm)) &&
71
+ (record.nameservers = [...m].map((t) => t[1]));
72
+ (m = response.match(/^Registered Date\s*: (\d\d\d\d). (\d\d). (\d\d)/m)) &&
73
+ (record.ts.created = new Date(`${m[1]}-${m[2]}-${m[3]}`));
74
+ (m = response.match(
75
+ /^Last Updated Date\s*: (\d\d\d\d). (\d\d). (\d\d)/m
76
+ )) && (record.ts.updated = new Date(`${m[1]}-${m[2]}-${m[3]}`));
77
+ (m = response.match(/^Expiration Date\s*: (\d\d\d\d). (\d\d). (\d\d)/m)) &&
78
+ (record.ts.expires = new Date(`${m[1]}-${m[2]}-${m[3]}`));
79
+ },
80
+
81
+ tr(response, record) {
82
+ let m;
83
+
84
+ (m = response.match(/^Organization Name\s*: (.+)/m)) &&
85
+ (record.registrar.name = m[1]);
86
+ (m = response.match(/^NIC Handle\s*: (.+)/m)) &&
87
+ (record.registrar.id = m[1]);
88
+ // (m = response.match(/^Reseller:\s+(\S[^\n]*)/m)) && (record.reseller = m[1]);
89
+ (m = response.match(/^Domain Status\s*: (\S[^\n]+)/m)) &&
90
+ (record.status = m[1].trim().split(/\s+/));
91
+ (m = response.match(/^\*\* Domain Servers\s*:((?:\n\S+)+)/m)) &&
92
+ (record.nameservers = m[1].trim().split(/\s+/));
93
+ (m = response.match(/^Created on.+: (\d\d\d\d)-(\w\w\w)-(\d\d)/m)) &&
94
+ (record.ts.created = new Date(`${m[2]} ${m[3]}, ${m[1]}`));
95
+ (m = response.match(/^Expires on.+: (\d\d\d\d)-(\w\w\w)-(\d\d)/m)) &&
96
+ (record.ts.expires = new Date(`${m[2]} ${m[3]}, ${m[1]}`));
97
+ },
98
+
99
+ be(response, record) {
100
+ let m;
101
+
102
+ (m = response.match(/^Registrar:\s*Name:\s+(.+)/m)) &&
103
+ (record.registrar.name = m[1]);
104
+ (m = response.match(/^Status:\s+(.+)/m)) && (record.status = [m[1].trim()]);
105
+ (m = response.match(/^Nameservers\s*:((?:\n\S+)+)/m)) &&
106
+ (record.nameservers = m[1].trim().split(/\s+/));
107
+ (m = response.match(/^Registered:\s+\w\w\w (\w\w\w) (\d\d) (\d\d\d\d)/m)) &&
108
+ (record.ts.created = new Date(`${m[1]} ${m[2]}, ${m[3]}`));
109
+ },
110
+
111
+ it(response, record) {
112
+ let m;
113
+
114
+ (m = response.match(/^Registrar\s*Organization:\s*(.+)/m)) &&
115
+ (record.registrar.name = m[1]);
116
+ (m = response.match(/^Status:\s*(.+)/m)) &&
117
+ (record.status = m[1].trim().split(/\s+/));
118
+ (m = response.match(/^Created:\s*(\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d)/m)) &&
119
+ (record.ts.created = new Date(m[1]));
120
+ (m = response.match(
121
+ /^Last Update:\s*(\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d)/m
122
+ )) && (record.ts.updated = new Date(m[1]));
123
+ (m = response.match(/^Expire Date:\s*(\d\d\d\d-\d\d-\d\d)/m)) &&
124
+ (record.ts.expires = new Date(m[1]));
125
+ (m = response.match(/^Nameservers((?:\n\S+)+)/m)) &&
126
+ (record.nameservers = m[1].trim().split(/\s+/));
127
+ },
128
+
129
+ de(response, record) {
130
+ let m;
131
+
132
+ // (m = response.match(/^Registrar:\s*(.+)/m)) && (record.registrar.name = m[1]);
133
+ (m = response.match(/^Status:\s*(.+)/m)) &&
134
+ (record.status = m[1].trim().split(/\s+/));
135
+ (m = response.matchAll(/^Nserver: (\S+)/gm)) &&
136
+ (record.nameservers = [...m].map((t) => t[1]));
137
+ // (m = response.match(/^Creation Date:\s*(\d\d\d\d-\d\d-\d\d)/m)) && (record.ts.created = new Date (m[1]));
138
+ (m = response.match(/^Changed: (\d\d\d\d-\d\d-\d\d\S)/m)) &&
139
+ (record.ts.updated = new Date(m[1]));
140
+ // (m = response.match(/^Expiration Date:\s*(\d\d\d\d-\d\d-\d\d)/m)) && (record.ts.expires = new Date (m[1]));
141
+ },
142
+
143
+ eu(response, record) {
144
+ let m;
145
+
146
+ (m = response.match(/^Registrar:\s*Name:\s*(.+)/m)) &&
147
+ (record.registrar.name = m[1]);
148
+ (m = response.match(/^Reseller:\s*Organisation:\s*(.+)/m)) &&
149
+ (record.reseller = m[1]);
150
+ (m = response.match(/^Name servers:((?:\n\S+)+)/m)) &&
151
+ (record.nameservers = m[1].trim().split(/\s+/));
152
+ },
42
153
  };
43
154
 
44
155
  export const port43servers: Record<string, any> = {
@@ -515,7 +626,9 @@ export const port43servers: Record<string, any> = {
515
626
  be: "whois.dns.be",
516
627
  bf: null,
517
628
  bg: "whois.register.bg",
518
- bh: null,
629
+ bh: "whois.nic.bh",
630
+ "com.bh": "whois.nic.bh",
631
+ "org.bh": "whois.nic.bh",
519
632
  bi: "whois1.nic.bi",
520
633
  bj: "whois.nic.bj",
521
634
  bl: null,
package/whois.d.ts CHANGED
@@ -7,11 +7,15 @@ export type WhoisOptions = Partial<{
7
7
  export type WhoisResponse = {
8
8
  found: boolean;
9
9
  registrar: {
10
- id: number;
10
+ id: string | number;
11
11
  name: string | null;
12
12
  };
13
13
  reseller: string | null;
14
14
  status: string[];
15
15
  nameservers: string[];
16
- ts: Record<WhoisTimestampFields, null | Date>;
16
+ ts: {
17
+ created: Date | null;
18
+ updated: Date | null;
19
+ expires: Date | null;
20
+ }
17
21
  };