privacybydesign / irma-frontend-packages

Collection of frontend related packages, that together form a Javascript "client" to the IRMA server.
7 stars 4 forks source link

Added handle option needed for irma-legacy #32

Closed ivard closed 4 years ago

ivard commented 4 years ago

Introduced a new option such that existing session pointers can also be handled. Due to this change, sessions might not be restartable in all cases. Therefore aborting sessions is a necessary feature. Therefore #30 must be merged first.

ivard commented 4 years ago

Resolved the merge conflicts first

ivard commented 4 years ago

@Timendus I now have changed it a bit such that the session option struct can simply be filled with the {sessionPtr: ..., token: ...} like the IRMA server provides this information. These are probably better names to explain what their use is. A consequence is that I now made start and result optional. This means they always have to be defined. Saying start: true is already enough to use the default options. This is maybe a bit weird, but in most cases you want to specify your own options for start anyway.

To make it a little bit less weird, an option might still be to remove the url parameter from the session struct and put it in the start and result struct. The current url parameter in those structs can then be renamed to something like endpoint. In this way you then say {session: {start: {url: 'http://localhost:8088}}} when you want the default options. This to circumvent that in some rare cases people have to say {session: {start: true}}.

I think I would prefer the second option, what do you think? Maybe you had arguments why you implemented it in the other way...

Oh btw: I didn't update the README yet, so you don't have to pay attention to that