tangled
alpha
login
or
join now
mackuba.eu
/
didkit
A library for handling DID identifiers used in Bluesky AT Protocol
1
fork
atom
overview
issues
pulls
pipelines
add resolved_by field to the DID
mackuba.eu
2 years ago
a032b2ff
29d36a6c
+6
-4
1 changed file
expand all
collapse all
unified
split
lib
didkit
did.rb
+6
-4
lib/didkit/did.rb
···
12
12
domain = handle.gsub(/^@/, '')
13
13
14
14
if dns_did = resolve_handle_by_dns(domain)
15
15
-
DID.new(dns_did)
15
15
+
DID.new(dns_did, :dns)
16
16
elsif http_did = resolve_handle_by_well_known(domain)
17
17
-
DID.new(http_did)
17
17
+
DID.new(http_did, :http)
18
18
else
19
19
nil
20
20
end
···
51
51
nil
52
52
end
53
53
54
54
-
attr_reader :type
54
54
+
attr_reader :type, :resolved_by
55
55
56
56
-
def initialize(did)
56
56
+
def initialize(did, resolved_by = nil)
57
57
if did =~ /^did\:(\w+)\:/
58
58
@did = did
59
59
@type = $1.to_sym
···
64
64
if @type != :plc && @type != :web
65
65
raise DIDError.new("Unrecognized DID type: #{@type}")
66
66
end
67
67
+
68
68
+
@resolved_by = resolved_by
67
69
end
68
70
69
71
def to_s