Skip to content

feat: possibility to set did resolver to use custom resolver#13

Open
maindotdev wants to merge 3 commits intomainfrom
did-resolver-manager
Open

feat: possibility to set did resolver to use custom resolver#13
maindotdev wants to merge 3 commits intomainfrom
did-resolver-manager

Conversation

@maindotdev
Copy link
Copy Markdown
Contributor

@maindotdev maindotdev commented Jun 17, 2025

This enables library consumers to use custom did resolver, e.g. with implemented caching.
Introducing a manager class removes the need to propagate the resolver through each function call.

@maindotdev maindotdev force-pushed the did-resolver-manager branch from f5aa096 to f71a7ed Compare June 17, 2025 14:05
@github-actions
Copy link
Copy Markdown

Coverage after merging did-resolver-manager into main will be

56.57%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
lib/src
   did_resolver_manager.dart60%100%100%60%12, 16
lib/src/annotations
   own_json_properties.dart100%100%100%100%
lib/src/common
   crypto.dart88%100%100%88%39, 54, 71
   did.dart100%100%100%100%
   encoding.dart80%100%100%80%4–6
lib/src/common/authentication_tokens
   authentication_tokens.dart0%100%100%0%23, 30–31, 33
   authentication_tokens.g.dart0%100%100%0%11–12, 14–15, 17, 20, 22–23, 25–26, 28, 9
lib/src/converters
   epoch_seconds_converter.dart20%100%100%20%10–11, 6, 8
   base64_url_converter.dart100%100%100%100%
   jwe_header_converter.dart100%100%100%100%
   jws_header_converter.dart100%100%100%100%
lib/src/curves
   curve_type.dart100%100%100%100%
lib/src/ecdh
   ecdh.dart80.30%100%100%80.30%123, 144, 157, 169, 172, 186, 197, 199, 205, 216, 43, 77, 83
lib/src/ecdh/ecdh_1pu
   ecdh_1pu_for_secp256_and_p.dart92.86%100%100%92.86%29
   ecdh_1pu_for_x.dart91.67%100%100%91.67%28
   ecdh_1pu.dart92.68%100%100%92.68%111, 64, 71
lib/src/ecdh/ecdh_es
   ecdh_es_for_secp_and_p.dart90.91%100%100%90.91%22
   ecdh_es_for_x.dart0%100%100%0%12, 18, 20–21, 24, 27, 32, 34
   ecdh_es.dart92.50%100%100%92.50%63, 70, 93
lib/src/errors
   unsupported_key_type_error.dart0%100%100%0%4
   unsupported_curve_error.dart0%100%100%0%4
   unsupported_encryption_algorithm_error.dart0%100%100%0%4–5
   unsupported_key_wrapping_algorithm_error.dart0%100%100%0%4, 6
   not_found_jwk_by_curve_error.dart0%100%100%0%4–5
   missing_authentication_tag_error.dart0%100%100%0%4, 6, 8
   missing_initialization_vector_error.dart0%100%100%0%4, 7, 9
   missing_key_agreement_error.dart0%100%100%0%4, 6, 8
   unsupported_wallet_type_error.dart0%100%100%0%4–6
lib/src/extensions
   affinidi_authenticator_extension.dart0%100%100%0%15, 18, 22–23, 25, 27, 30–31, 33–34, 36, 39–41, 44–45, 47, 50, 52, 54–57, 64, 69
   wallet_extension.dart94.12%100%100%94.12%33
   big_int_extension.dart57.14%100%100%57.14%11, 18, 20
   did_document_extension.dart0%100%100%0%100, 11–12, 14–17, 22–25, 30–31, 36–37, 39–42, 47–50, 55–59, 64–65, 68–69, 72–74, 78–79, 82–84, 87, 91–92, 95, 99
   object_extension.dart100%100%100%100%
   key_type_extension.dart85.71%100%100%85.71%28
   jwks_extension.dart66.67%100%100%66.67%11
   jwk_extension.dart70%100%100%70%11, 15, 19, 34, 38, 45
   uint8_list_extension.dart100%100%100%100%
   public_key_extension.dart100%100%100%100%
   verification_method_list_extention.dart0%100%100%0%10, 12–13, 15, 6–9
lib/src/jwks
   jwks.dart66.67%100%100%66.67%15
   jwks.g.dart66.67%100%100%66.67%15–16
   jwk.dart66.67%100%100%66.67%80
   jwk.g.dart46.55%100%100%46.55%35–36, 40–52, 54–56, 58–68, 85, 89
lib/src/mediator_client
   mediator_client.dart0%100%100%0%106, 108, 110–111, 114–116, 118, 121, 128, 132, 134–135, 141, 143–148, 151–152, 154, 159–163, 167–168, 170, 178–180, 184–185, 187–188, 192, 198–199, 201, 205–206, 208–211, 213–214, 221–223, 228–229, 28, 35, 39, 45–47, 56, 60, 62, 66, 68, 71, 78, 81, 84, 86–88, 91–93, 95, 98
lib/src/mediator_client/options
   message_options.dart100%100%100%100%
   forward_message_options.dart100%100%100%100%
   web_socket_options.dart100%100%100%100%
   status_request_message_options.dart100%100%100%100%
   live_delivery_change_message_options.dart100%100%100%100%
lib/src/messages
   didcomm_message.dart46.67%100%100%46.67%102–103, 119, 14–15, 17, 21, 24, 32, 42, 51, 56, 88, 95–97
lib/src/messages/attachments
   attachment.dart0%100%100%0%28, 39–40, 42
   attachment.g.dart0%100%100%0%10–17, 19–20, 23–31, 33–35, 38, 42, 44, 48, 9
   attachment_data.dart0%100%100%0%13, 15–16, 18
   attachment_data.g.dart0%100%100%0%10–17, 20–27, 9
lib/src/messages/core/encrypted_message
   encrypted_message.dart91.46%100%100%91.46%146, 151, 183–184, 224, 63, 70
   encrypted_message.g.dart100%100%100%100%
lib/src/messages/core/encrypted_message/recipients
   recipient.dart100%100%100%100%
   recipient.g.dart100%100%100%100%
   recipient_header.dart100%100%100%100%
   recipient_header.g.dart100%100%100%100%
lib/src/messages/core/plain_text_message
   plain_text_message.dart100%100%100%100%
   plain_text_message.g.dart83.33%100%100%83.33%23–24, 38, 42, 51, 57
lib/src/messages/core/signed_message
   signed_message.dart100%100%100%100%
   signed_message.g.dart100%100%100%100%
   signature.dart100%100%100%100%
   signature.g.dart100%100%100%100%
lib/src/messages/jwm/jwe
   jwe_header.dart85.71%100%100%85.71%108, 117, 137, 153, 185, 195, 204–205
   jwe_header.g.dart100%100%100%100%
   ephemeral_key.dart100%100%100%100%
   ephemeral_key.g.dart100%100%100%100%
lib/src/messages/jwm/jws
   jws_header.dart100%100%100%100%
   jws_header.g.dart100%100%100%100%
   signature_header.dart100%100%100%100%
   signature_header.g.dart100%100%100%100%
lib/src/messages/protocols/ack
   ack_message.dart0%100%100%0%10–11, 13, 8
   ack_message.g.dart0%100%100%0%11–12, 9
lib/src/messages/protocols/discover_features
   disclose_message.dart0%100%100%0%10–11, 13, 8
   disclose_message.g.dart0%100%100%0%10, 12–13, 9
   query_message.dart0%100%100%0%10–11, 13, 8
   query_message.g.dart0%100%100%0%10, 12–13, 9
lib/src/messages/protocols/message_pickup
   status_request_message.dart0%100%100%0%14–15, 18, 21–27, 7
   live_delivery_change_message.dart0%100%100%0%13–14, 17, 20–26, 6
lib/src/messages/protocols/message_pickup/message_pickup_message
   message_pickup_message.dart0%100%100%0%16, 26–28, 33, 35
   message_pickup_message.g.dart0%100%100%0%11–19, 22, 24–30, 32–34,

@maindotdev maindotdev force-pushed the did-resolver-manager branch 3 times, most recently from 7683d9a to 8e0dd23 Compare June 23, 2025 12:49
Comment thread lib/src/did_resolver_manager.dart
@maindotdev maindotdev force-pushed the did-resolver-manager branch 2 times, most recently from b7c53f3 to defecec Compare June 30, 2025 07:37
@maindotdev maindotdev force-pushed the did-resolver-manager branch from defecec to 558d1c4 Compare June 30, 2025 08:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants