A library for handling DID identifiers used in Bluesky AT Protocol

add resolved_by field to the DID

+6 -4
+6 -4
lib/didkit/did.rb
··· 12 12 domain = handle.gsub(/^@/, '') 13 13 14 14 if dns_did = resolve_handle_by_dns(domain) 15 - DID.new(dns_did) 15 + DID.new(dns_did, :dns) 16 16 elsif http_did = resolve_handle_by_well_known(domain) 17 - DID.new(http_did) 17 + DID.new(http_did, :http) 18 18 else 19 19 nil 20 20 end ··· 51 51 nil 52 52 end 53 53 54 - attr_reader :type 54 + attr_reader :type, :resolved_by 55 55 56 - def initialize(did) 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 + 68 + @resolved_by = resolved_by 67 69 end 68 70 69 71 def to_s