summaryrefslogtreecommitdiff
path: root/src/scm/webid-oidc/client/accounts.scm
diff options
context:
space:
mode:
Diffstat (limited to 'src/scm/webid-oidc/client/accounts.scm')
-rw-r--r--src/scm/webid-oidc/client/accounts.scm14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/scm/webid-oidc/client/accounts.scm b/src/scm/webid-oidc/client/accounts.scm
index 626cc6a..54c6e07 100644
--- a/src/scm/webid-oidc/client/accounts.scm
+++ b/src/scm/webid-oidc/client/accounts.scm
@@ -26,6 +26,7 @@
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-19)
#:use-module (webid-oidc errors)
+ #:use-module (webid-oidc web-i18n)
#:use-module ((webid-oidc parameters) #:prefix p:)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
#:use-module ((webid-oidc oidc-id-token) #:prefix id:)
@@ -85,12 +86,7 @@
)
#:declarative? #t)
-(define (G_ text)
- (let ((out (gettext text)))
- (if (string=? out text)
- ;; No translation, disambiguate
- (car (reverse (string-split text #\|)))
- out)))
+(define <jwk:key-pair> jwk:<key-pair>)
;; This exception is continuable! Continue with the authorization
;; code.
@@ -159,7 +155,7 @@
(define-method (->sexp (account <account>))
`(begin
- (use-modules (oop goops) (webid-oidc client accounts))
+ (use-modules (oop goops) (webid-oidc client accounts) (webid-oidc jwk))
(make <account>
#:subject ,(uri->string (subject account))
#:issuer ,(uri->string (issuer account))
@@ -175,7 +171,7 @@
(if refresh-token
`(#:refresh-token ,refresh-token)
'()))
- #:key-pair (quote ,(key-pair account)))))
+ #:key-pair (jwk->key (quote ,(key->jwk (key-pair account)))))))
(define-method (write (account <account>) port)
(let ((code (->sexp account)))
@@ -496,7 +492,7 @@
(slot-set! ret 'refresh-token refresh-token)
ret))
-(define-method (set-key-pair (a <account>) key-pair)
+(define-method (set-key-pair (a <account>) (key-pair <jwk:key-pair>))
(let ((ret (shallow-clone a)))
(slot-set! ret 'key-pair key-pair)
ret))