@mattrglobal/verifier-sdk-web 1.1.1-unstable.154 → 1.1.1-unstable.155
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -13
- package/dist/lib/verifier-js-no-deps.cjs.js +23 -23
- package/dist/lib/verifier-js-no-deps.cjs.js.map +1 -1
- package/dist/lib/verifier-js.cjs.js +23 -23
- package/dist/lib/verifier-js.cjs.js.map +1 -1
- package/dist/typings/index.d.ts +4 -4
- package/dist/typings/verifier/index.d.ts +1 -1
- package/dist/typings/verifier/initialize.d.ts +12 -0
- package/dist/typings/verifier/types/credential-presentation.d.ts +1 -1
- package/dist/typings/verifier/types/verifier-web-sdk.d.ts +3 -3
- package/dist/typings/verifier/utils.d.ts +3 -3
- package/dist/verifier-js.development.js +23 -23
- package/dist/verifier-js.development.js.map +1 -1
- package/dist/verifier-js.production.esm.js +1 -1
- package/dist/verifier-js.production.esm.js.map +1 -1
- package/dist/verifier-js.production.js +1 -1
- package/dist/verifier-js.production.js.map +1 -1
- package/package.json +2 -2
- package/dist/typings/verifier/initialise.d.ts +0 -12
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
34
34
|
PERFORMANCE OF THIS SOFTWARE.
|
|
35
35
|
***************************************************************************** */
|
|
36
|
-
function r(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{u(n.next(e))}catch(e){s(e)}}function a(e){try{u(n.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}u((n=n.apply(e,t||[])).next())}))}function n(e,t){var r,n,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function i(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,s=r.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(n=s.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=s.return)&&r.call(s)}finally{if(i)throw i.error}}return o}var s,o={withStackTrace:!1},a=function(e,t,r){return void 0===r&&(r=o),{data:t.isOk()?{type:"Ok",value:t.value}:{type:"Err",value:t.error},message:e,stack:r.withStackTrace?(new Error).stack:void 0}};!function(e){e.fromThrowable=function(e,t){return function(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];try{var s=e.apply(void 0,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(i(arguments[t]));return e}(r));return u(s)}catch(e){return l(t?t(e):e)}}}}(s||(s={}));var u=function(e){return new c(e)},l=function(e){return new d(e)},c=function(){function e(e){this.value=e}return e.prototype.isOk=function(){return!0},e.prototype.isErr=function(){return!this.isOk()},e.prototype.map=function(e){return u(e(this.value))},e.prototype.mapErr=function(e){return u(this.value)},e.prototype.andThen=function(e){return e(this.value)},e.prototype.orElse=function(e){return u(this.value)},e.prototype.asyncAndThen=function(e){return e(this.value)},e.prototype.asyncMap=function(e){return h.fromSafePromise(e(this.value))},e.prototype.unwrapOr=function(e){return this.value},e.prototype.match=function(e,t){return e(this.value)},e.prototype._unsafeUnwrap=function(e){return this.value},e.prototype._unsafeUnwrapErr=function(e){throw a("Called `_unsafeUnwrapErr` on an Ok",this,e)},e}(),d=function(){function e(e){this.error=e}return e.prototype.isOk=function(){return!1},e.prototype.isErr=function(){return!this.isOk()},e.prototype.map=function(e){return l(this.error)},e.prototype.mapErr=function(e){return l(e(this.error))},e.prototype.andThen=function(e){return l(this.error)},e.prototype.orElse=function(e){return e(this.error)},e.prototype.asyncAndThen=function(e){return m(this.error)},e.prototype.asyncMap=function(e){return m(this.error)},e.prototype.unwrapOr=function(e){return e},e.prototype.match=function(e,t){return t(this.error)},e.prototype._unsafeUnwrap=function(e){throw a("Called `_unsafeUnwrap` on an Err",this,e)},e.prototype._unsafeUnwrapErr=function(e){return this.error},e}();s.fromThrowable;var p,y,f,v,h=function(){function e(e){this._promise=e}return e.fromSafePromise=function(t){return new e(t.then((function(e){return new c(e)})))},e.fromPromise=function(t,r){return new e(t.then((function(e){return new c(e)})).catch((function(e){return new d(r(e))})))},e.prototype.map=function(t){var i=this;return new e(this._promise.then((function(e){return r(i,void 0,void 0,(function(){var r;return n(this,(function(n){switch(n.label){case 0:return e.isErr()?[2,new d(e.error)]:(r=c.bind,[4,t(e.value)]);case 1:return[2,new(r.apply(c,[void 0,n.sent()]))]}}))}))})))},e.prototype.mapErr=function(t){var i=this;return new e(this._promise.then((function(e){return r(i,void 0,void 0,(function(){var r;return n(this,(function(n){switch(n.label){case 0:return e.isOk()?[2,new c(e.value)]:(r=d.bind,[4,t(e.error)]);case 1:return[2,new(r.apply(d,[void 0,n.sent()]))]}}))}))})))},e.prototype.andThen=function(t){return new e(this._promise.then((function(r){if(r.isErr())return new d(r.error);var n=t(r.value);return n instanceof e?n._promise:n})))},e.prototype.orElse=function(t){var i=this;return new e(this._promise.then((function(e){return r(i,void 0,void 0,(function(){return n(this,(function(r){return e.isErr()?[2,t(e.error)]:[2,new c(e.value)]}))}))})))},e.prototype.match=function(e,t){return this._promise.then((function(r){return r.match(e,t)}))},e.prototype.unwrapOr=function(e){return this._promise.then((function(t){return t.unwrapOr(e)}))},e.prototype.then=function(e,t){return this._promise.then(e,t)},e}(),m=function(e){return new h(Promise.resolve(new d(e)))};function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function b(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=k(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,o=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,s=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw s}}}}function w(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function C(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function E(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?C(Object(r),!0).forEach((function(t){w(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):C(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function T(e){return function(e){if(Array.isArray(e))return g(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||k(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e){return S="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},S(e)}function k(e,t){if(e){if("string"==typeof e)return g(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?g(e,t):void 0}}function I(e){var t,r,n=S(e);return"string"===n?'"'.concat(e,'"'):"number"===n||"bigint"===n||"boolean"===n?"".concat(e):"object"===n||"function"===n?null!==(t=e&&(null===(r=Object.getPrototypeOf(e))||void 0===r||null===(r=r.constructor)||void 0===r?void 0:r.name))&&void 0!==t?t:"null":n}function R(e,t,r,n,i){var s,o,a,u,l,c,d,p,h,m,g,b=i&&"input"in i?i.input:r.value,w=null!==(s=null!==(o=null==i?void 0:i.expected)&&void 0!==o?o:e.expects)&&void 0!==s?s:null,C=null!==(a=null==i?void 0:i.received)&&void 0!==a?a:I(b),E={kind:e.kind,type:e.type,input:b,expected:w,received:C,message:"Invalid ".concat(t,": ").concat(w?"Expected ".concat(w," but r"):"R","eceived ").concat(C),requirement:e.requirement,path:null==i?void 0:i.path,issues:null==i?void 0:i.issues,lang:n.lang,abortEarly:n.abortEarly,abortPipeEarly:n.abortPipeEarly},T="schema"===e.kind,S=null!==(u=null!==(l=null!==(c=null!==(d=null!==(p=null==i?void 0:i.message)&&void 0!==p?p:e.message)&&void 0!==d?d:(h=e.reference,m=E.lang,null===(g=v)||void 0===g||null===(g=g.get(h))||void 0===g?void 0:g.get(m)))&&void 0!==c?c:T?function(e){var t;return null===(t=f)||void 0===t?void 0:t.get(e)}(E.lang):null)&&void 0!==l?l:n.message)&&void 0!==u?u:function(e){var t;return null===(t=y)||void 0===t?void 0:t.get(e)}(E.lang);S&&(E.message="function"==typeof S?S(E):S),T&&(r.typed=!1),r.issues?r.issues.push(E):r.issues=[E]}function O(e,t){return Object.hasOwn(e,t)&&"__proto__"!==t&&"prototype"!==t&&"constructor"!==t}function A(e,t){var r,n=T(new Set(e));return n.length>1?"(".concat(n.join(" ".concat(t," ")),")"):null!==(r=n[0])&&void 0!==r?r:"never"}function P(e){return{kind:"validation",type:"non_empty",reference:P,async:!1,expects:"!0",message:e,_run:function(e,t){return e.typed&&0===e.value.length&&R(this,"length",e,t,{received:"0"}),e}}}function U(e,t){return{kind:"schema",type:"array",reference:U,expects:"Array",async:!1,item:e,message:t,_run:function(e,t){var r=e.value;if(Array.isArray(r)){e.typed=!0,e.value=[];for(var n=0;n<r.length;n++){var i=r[n],s=this.item._run({typed:!1,value:i},t);if(s.issues){var o,a={type:"array",origin:"value",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path?c.path.unshift(a):c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}s.typed||(e.typed=!1),e.value.push(s.value)}}else R(this,"type",e,t);return e}}}function F(e){return{kind:"schema",type:"boolean",reference:F,expects:"boolean",async:!1,message:e,_run:function(e,t){return"boolean"==typeof e.value?e.typed=!0:R(this,"type",e,t),e}}}function j(e,t){return{kind:"schema",type:"literal",reference:j,expects:I(e),async:!1,literal:e,message:t,_run:function(e,t){return e.value===this.literal?e.typed=!0:R(this,"type",e,t),e}}}function x(e,t){return{kind:"schema",type:"object",reference:x,expects:"Object",async:!1,entries:e,message:t,_run:function(e,t){var r=e.value;if(r&&"object"===S(r))for(var n in e.typed=!0,e.value={},this.entries){var i=r[n],s=this.entries[n]._run({typed:!1,value:i},t);if(s.issues){var o,a={type:"object",origin:"value",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path?c.path.unshift(a):c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}s.typed||(e.typed=!1),(void 0!==s.value||n in r)&&(e.value[n]=s.value)}else R(this,"type",e,t);return e}}}function _(e){for(var t={kind:"schema",type:"optional",reference:_,expects:"(".concat(e.expects," | undefined)"),async:!1,wrapped:e,_run:function(e,t){return void 0===e.value&&("default"in this&&(e.value=function(e,t,r){return"function"==typeof e.default?e.default(t,r):e.default}(this,e,t)),void 0===e.value)?(e.typed=!0,e):this.wrapped._run(e,t)}},r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return 0 in n&&(t.default=n[0]),t}function D(e,t){return{kind:"schema",type:"picklist",reference:D,expects:A(e.map(I),"|"),async:!1,options:e,message:t,_run:function(e,t){return this.options.includes(e.value)?e.typed=!0:R(this,"type",e,t),e}}}function q(e,t,r){return{kind:"schema",type:"record",reference:q,expects:"Object",async:!1,key:e,value:t,message:r,_run:function(e,t){var r=e.value;if(r&&"object"===S(r)){for(var n in e.typed=!0,e.value={},r)if(O(r,n)){var i=r[n],s=this.key._run({typed:!1,value:n},t);if(s.issues){var o,a={type:"object",origin:"key",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}var d=this.value._run({typed:!1,value:i},t);if(d.issues){var p,y={type:"object",origin:"value",input:r,key:n,value:i},f=b(d.issues);try{for(f.s();!(p=f.n()).done;){var v,h=p.value;h.path?h.path.unshift(y):h.path=[y],null===(v=e.issues)||void 0===v||v.push(h)}}catch(e){f.e(e)}finally{f.f()}if(e.issues||(e.issues=d.issues),t.abortEarly){e.typed=!1;break}}s.typed&&d.typed||(e.typed=!1),s.typed&&(e.value[s.value]=d.value)}}else R(this,"type",e,t);return e}}}function M(e){return{kind:"schema",type:"string",reference:M,expects:"string",async:!1,message:e,_run:function(e,t){return"string"==typeof e.value?e.typed=!0:R(this,"type",e,t),e}}}function B(e){var t;if(e){var r,n=b(e);try{for(n.s();!(r=n.n()).done;){var i,s=r.value;if(t)(i=t).push.apply(i,T(s.issues));else t=s.issues}}catch(e){n.e(e)}finally{n.f()}}return t}function K(e,t){return{kind:"schema",type:"union",reference:K,expects:A(e.map((function(e){return e.expects})),"|"),async:!1,options:e,message:t,_run:function(e,t){var r,n,i,s,o,a=b(this.options);try{for(a.s();!(o=a.n()).done;){var u=o.value._run({typed:!1,value:e.value},t);if(u.typed){if(!u.issues){n=u;break}i?i.push(u):i=[u]}else s?s.push(u):s=[u]}}catch(e){a.e(e)}finally{a.f()}if(n)return n;if(i){if(1===i.length)return i[0];R(this,"type",e,t,{issues:B(i)}),e.typed=!0}else{if(1===(null===(r=s)||void 0===r?void 0:r.length))return s[0];R(this,"type",e,t,{issues:B(s)})}return e}}}function N(){return{kind:"schema",type:"unknown",reference:N,expects:"unknown",async:!1,_run:function(e){return e.typed=!0,e}}}function H(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return E(E({},t[0]),{},{pipe:t,_run:function(e,r){for(var n=0,i=t;n<i.length;n++){var s=i[n];if("metadata"!==s.kind){if(e.issues&&("schema"===s.kind||"transformation"===s.kind)){e.typed=!1;break}e.issues&&(r.abortEarly||r.abortPipeEarly)||(e=s._run(e,r))}}return e}})}function V(e,t,r){var n=e._run({typed:!1,value:t},function(e){var t,r,n,i,s,o;return{lang:null!==(t=null==e?void 0:e.lang)&&void 0!==t?t:null===(r=p)||void 0===r?void 0:r.lang,message:null==e?void 0:e.message,abortEarly:null!==(n=null==e?void 0:e.abortEarly)&&void 0!==n?n:null===(i=p)||void 0===i?void 0:i.abortEarly,abortPipeEarly:null!==(s=null==e?void 0:e.abortPipeEarly)&&void 0!==s?s:null===(o=p)||void 0===o?void 0:o.abortPipeEarly}}(r));return{typed:n.typed,success:!n.issues,output:n.value,issues:n.issues}}h.fromPromise,h.fromSafePromise;const $=e=>t=>V(e,t).success,G=(e,r)=>n=>{const i=((e,t)=>{const r=V(t,e);return r.success?u(r.output):l(r.issues.map((({message:e,path:t})=>({message:e,path:null==t?void 0:t.map((e=>e.key))}))))})(n,e);if(i.isErr())throw new t(r,{data:n,errors:i.error})};var L,Q,z,J;e.MobileCredentialVerificationReasonType=void 0,(L=e.MobileCredentialVerificationReasonType||(e.MobileCredentialVerificationReasonType={})).TrustedIssuerCertificateExpired="TrustedIssuerCertificateExpired",L.TrustedIssuerCertificateNotYetValid="TrustedIssuerCertificateNotYetValid",L.IssuerNotTrusted="IssuerNotTrusted",L.MobileCredentialInvalid="MobileCredentialInvalid",L.MobileCredentialExpired="MobileCredentialExpired",L.MobileCredentialNotYetValid="MobileCredentialNotYetValid",L.InvalidSignerCertificate="InvalidSignerCertificate",L.DeviceKeyInvalid="DeviceKeyInvalid",L.UnsupportedCurve="UnsupportedCurve",L.StatusRevoked="StatusRevoked",L.StatusSuspended="StatusSuspended",L.StatusUnknown="StatusUnknown",e.ClaimType=void 0,(Q=e.ClaimType||(e.ClaimType={})).Boolean="boolean",Q.Number="number",Q.String="string",Q.Binary="binary",Q.Date="date",Q.DateTime="dateTime",Q.Array="array",Q.Object="object",e.CredentialBrandingImageFormat=void 0,(z=e.CredentialBrandingImageFormat||(e.CredentialBrandingImageFormat={})).svg="svg",z.png="png",e.MobileCredentialResponseErrorCode=void 0,(e.MobileCredentialResponseErrorCode||(e.MobileCredentialResponseErrorCode={})).NotReturned="notReturned",e.OpenidPresentationCredentialProfileSupported=void 0,(e.OpenidPresentationCredentialProfileSupported||(e.OpenidPresentationCredentialProfileSupported={})).MOBILE="mobile",function(e){e.AwaitingRequestRetrieval="AwaitingRequestRetrieval",e.AwaitingResponse="AwaitingResponse",e.ResponseSubmitted="ResponseSubmitted",e.ResultReady="ResultReady"}(J||(J={}));const Y=x({profile:D([e.OpenidPresentationCredentialProfileSupported.MOBILE]),docType:M(),nameSpaces:q(M(),q(M(),function e(t,r){return{kind:"schema",type:"strict_object",reference:e,expects:"Object",async:!1,entries:t,message:r,_run:function(e,t){var r=e.value;if(r&&"object"===S(r)){for(var n in e.typed=!0,e.value={},this.entries){var i=r[n],s=this.entries[n]._run({typed:!1,value:i},t);if(s.issues){var o,a={type:"object",origin:"value",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path?c.path.unshift(a):c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}s.typed||(e.typed=!1),(void 0!==s.value||n in r)&&(e.value[n]=s.value)}if(!e.issues||!t.abortEarly)for(var d in r)if(!(d in this.entries)){var p=r[d];R(this,"type",e,t,{input:p,expected:"never",path:[{type:"object",origin:"value",input:r,key:d,value:p}]});break}}else R(this,"type",e,t);return e}}}({intentToRetain:_(F())})))});var W;!function(e){e.SessionAborted="SessionAborted",e.VerificationError="VerificationError",e.ResponseError="ResponseError",e.WalletUnavailable="WalletUnavailable",e.Unknown="Unknown"}(W||(W={}));const X=x({sessionId:M(),challenge:_(M()),credentialQuery:_(N()),credentials:_(N()),credentialErrors:_(N()),error:_(N())});var Z,ee;e.Mode=void 0,(Z=e.Mode||(e.Mode={})).SameDevice="sameDevice",Z.CrossDevice="crossDevice",function(e){e.DigitalCredentialsApi="digital-credentials-api",e.Openid4vp="openid4vp"}(ee||(ee={})),x({credentialQuery:U(Y),challenge:M(),redirectUri:_(M()),walletProviderId:_(M()),dcApiSupported:_(F())});const te=x({type:j(ee.DigitalCredentialsApi),sessionId:M(),sessionKey:M(),sessionTtl:function e(t){return{kind:"schema",type:"number",reference:e,expects:"number",async:!1,message:t,_run:function(e,t){return"number"!=typeof e.value||isNaN(e.value)?R(this,"type",e,t):e.typed=!0,e}}}(),request:q(M(),function e(){return{kind:"schema",type:"any",reference:e,expects:"any",async:!1,_run:function(e){return e.typed=!0,e}}}())}),re=K([te,x({type:_(j(ee.Openid4vp)),sessionId:M(),sessionKey:M(),sessionUrl:M()})]),ne=K([x({status:D([J.ResultReady]),responseCode:_(M())}),x({status:M()})]);var ie;!function(e){e.challenge="mattr_chg",e.sessionId="mattr_sid"}(ie||(ie={}));const se="2.0.0";var oe;!function(e){e.PresentationCompleted="PresentationCompleted",e.PresentationTimeout="PresentationTimeout",e.PresentationAbort="PresentationAbort"}(oe||(oe={}));const ae=x({walletProviderId:_(M()),mode:j(e.Mode.SameDevice),redirectUri:M()}),ue=x({walletProviderId:_(M()),mode:j(e.Mode.CrossDevice)}),le=x({walletProviderId:_(M()),redirectUri:M(),mode:_(D([e.Mode.CrossDevice,e.Mode.SameDevice]))}),ce=x({credentialQuery:H(U(Y),P()),challenge:_(M()),openid4vpConfiguration:_(K([ae,ue,le]))});var de,pe,ye;e.RequestCredentialsErrorType=void 0,(de=e.RequestCredentialsErrorType||(e.RequestCredentialsErrorType={})).RequestCredentialsFailed="RequestCredentialsFailed",de.Timeout="Timeout",de.Abort="Abort",function(e){e.FailedToGetSessionResult="Failed to get session result",e.FailedToGetSessionStatus="Failed to get session status",e.FailedToCreateSession="Failed to create session",e.FailedToVerifyCredentialResponse="Failed to verify credential response",e.MissingOpenId4vpConfig="Identified openid4vp session, but missing openId4vpConfiguration on `requestCredentials`",e.DcApiError="Failed to request credentials with Digital Credentials API",e.DcApiResponseParseError="Failed to parse response from Digital Credentials API",e.Abort="User aborted the session",e.Timeout="User session timeout"}(pe||(pe={})),e.AbortSessionErrorType=void 0,(e.AbortSessionErrorType||(e.AbortSessionErrorType={})).AbortSessionFailed="AbortSessionFailed",function(e){e.FailedToAbortSession="Failed to abort session"}(ye||(ye={}));const fe=x({apiBaseUrl:H(M(),P("Must not be empty")),applicationId:H(M(),P("Must not be empty"))});var ve,he;!function(e){e.UnexpectedResponse="UnexpectedResponse"}(ve||(ve={})),function(e){e.HttpError="HttpError",e.UnknownError="UnknownError"}(he||(he={}));const me=async(e,t)=>{try{const r=Object.assign(Object.assign({},null==t?void 0:t.headers),{"x-mattr-sdk-version":`verifier-sdk-web/${se}`}),n=await fetch(e,Object.assign(Object.assign({},t),{headers:r}));return n.status>299||n.status<200?l({type:he.HttpError,message:`HTTP error, status = ${n.status}`,status:n.status}):u(n)}catch(e){return l({type:he.UnknownError,message:"Unknown error",cause:e})}};let ge;var be;!function(e){e.SdkNotInitialised="SDK not initialised"}(be||(be={}));const we=()=>ge;let Ce,Ee,Te,Se;const ke=e=>{const{sessionId:t,sessionKey:r,sessionTimeoutId:n}=e;Ee=t,Te=r,Se=n;const i=new AbortController;return Ce=i,i},Ie=()=>{null==Ce||Ce.abort(),Se&&window.clearTimeout(Se),Ce=void 0,Te=void 0,Ee=void 0,Se=void 0};var Re=je,Oe=je,Ae=je,Pe=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Ue=/CrOS/,Fe=/android|ipad|playbook|silk/i;function je(e){e||(e={});var t=e.ua;if(t||"undefined"==typeof navigator||(t=navigator.userAgent),t&&t.headers&&"string"==typeof t.headers["user-agent"]&&(t=t.headers["user-agent"]),"string"!=typeof t)return!1;var r=Pe.test(t)&&!Ue.test(t)||!!e.tablet&&Fe.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==t.indexOf("Macintosh")&&-1!==t.indexOf("Safari")&&(r=!0),r}Re.isMobile=Oe,Re.default=Ae;const xe=e=>1e3*Math.pow(2,e),_e=2,De=async(e,t)=>{const{retries:r=_e,retryDelay:n=xe,attempt:i=0}=t;try{return await e()}catch(s){if(r>0){const s="function"==typeof n?n(i):n;return await new Promise((e=>setTimeout(e,s))),await De(e,Object.assign(Object.assign({},t),{retries:r-1,retryDelay:n,attempt:i+1}))}throw s}},qe=async(e,t)=>{const{retries:r=_e,retryDelay:n=xe,attempt:i=0,retryHttpStatus:s}=t,o=await e();if(o.isErr()&&o.error.status===s&&r>0){const s="function"==typeof n?n(i):n;return await new Promise((e=>setTimeout(e,s))),await qe(e,Object.assign(Object.assign({},t),{retries:r-1,retryDelay:n,attempt:i+1}))}return o},Me=()=>{const e=window.crypto.getRandomValues(new Uint8Array(32)),t=String.fromCharCode(...Array.from(e));return window.btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},Be=async({challenge:e,responseCode:t,sessionId:r,apiBaseUrl:n})=>{const i={challenge:e,responseCode:t},s=await qe((async()=>await me(`${n}/v2/presentations/sessions/${r}/result`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)})),{retries:2,retryHttpStatus:404});if(s.isErr())return l(s.error);const o=await s.value.json();return $(X)(o)?u(o):l({type:ve.UnexpectedResponse,message:"Exchange session result return unsupported response",details:{data:o}})};var Ke;let Ne;!function(e){e.message="message"}(Ke||(Ke={}));const He=()=>{Ne&&window.removeEventListener(Ke.message,Ne,!1),Ne=void 0},Ve=e=>{const{container:t}=e;document.body.contains(t)&&document.body.removeChild(t),He()},$e=async t=>{const{challenge:r,apiBaseUrl:n,sessionUrl:i,sessionId:s,sessionKey:o}=t,a=(e=>{const{sessionUrl:t}=e,r=document.createElement("div"),n=document.createElement("iframe");n.src=t,n.setAttribute("style","border: none !important; width: 100% !important; height: 100% !important; position: absolute !important; top: 0 !important; left: 0 !important; animation: openOnlinePresentationModal 0.4s 0s linear forwards;");const i=document.createElement("style");return i.innerHTML="@keyframes openOnlinePresentationModal {\n 0% {\n opacity: 0;\n transform: scale(0.95)\n }\n 100% {\n opacity: 100%;\n transform: scale(1)\n }\n }",r.appendChild(i),r.appendChild(n),document.body.appendChild(r),r.setAttribute("style","background: rgba(0, 0, 0, 0.5) !important; position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; z-index: 999;"),r.setAttribute("class","mattr-verifier-modal-container"),r})({sessionUrl:i});return await new Promise((t=>{ke({sessionId:s,sessionKey:o}).signal.addEventListener("abort",(()=>{Ve({container:a}),t(l({type:e.RequestCredentialsErrorType.Abort,message:pe.Abort}))})),He(),Ne=(t=>async r=>{const{onComplete:n,onFailure:i,container:s,sessionId:o,apiBaseUrl:a,challenge:u}=t;if(r.origin===a){if(r.data.type===oe.PresentationCompleted&&r.data.responseCode&&r.data.sessionId){const t=r.data.responseCode,l=await Be({challenge:u,responseCode:t,sessionId:o,apiBaseUrl:a});return l.isErr()?(i({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.FailedToGetSessionResult}),void Ve({container:s})):(n({result:"challenge"in l.value?l.value:void 0,sessionId:l.value.sessionId,sessionCompletedInRedirect:!1}),void Ve({container:s}))}return r.data.type===oe.PresentationTimeout?(i({type:e.RequestCredentialsErrorType.Timeout,message:pe.Timeout}),void Ve({container:s})):r.data.type===oe.PresentationAbort?(i({type:e.RequestCredentialsErrorType.Abort,message:pe.Abort}),void Ve({container:s})):void 0}})({container:a,sessionId:s,apiBaseUrl:n,challenge:r,onComplete:e=>t(u(e)),onFailure:e=>t(l(e))}),window.addEventListener(Ke.message,Ne,!1)}))},Ge=async()=>{const r=we();if(!r)throw new t(be.SdkNotInitialised);const{apiBaseUrl:n}=r,i=(()=>{if(Ee)return{sessionId:Ee,sessionKey:Te,sessionTimeoutId:Se}})();if(!i||!i.sessionKey)return u(void 0);const{sessionId:s,sessionKey:o}=i;Ie();const a=await(async({apiBaseUrl:e,sessionId:t,sessionKey:r})=>{const n=await me(`${e}/v2/presentations/sessions/${t}/abort`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r}`}});return n.isErr()?l(n.error):u(void 0)})({apiBaseUrl:n,sessionId:s,sessionKey:o});return a.isErr()?l({type:e.AbortSessionErrorType.AbortSessionFailed,message:ye.FailedToAbortSession,cause:a.error}):u(void 0)},Le=async(t,r)=>{try{const e=await navigator.credentials.get(Object.assign(Object.assign({},t),{signal:r.signal}));return u(e)}catch(t){return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiError,cause:t})}},Qe=t=>{if(!t)return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiResponseParseError,details:{response:t}});if("object"==typeof t)return u(t);if("string"==typeof t)try{const e=JSON.parse(t);return u(e)}catch(r){return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiResponseParseError,details:{response:t}})}return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiResponseParseError,details:{response:t}})},ze=async e=>{const{apiBaseUrl:t,sessionId:r,sessionKey:n,challenge:i,protocol:s,data:o}=e,a={protocol:s,data:o,challenge:i},c=await me(`${t}/v2/presentations/sessions/${r}/dc-api/response`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`},body:JSON.stringify(a)});if(c.isErr())return l(c.error);const d=await c.value.json();return $(X)(d)?u(d):l({type:ve.UnexpectedResponse,message:"Verify credential returned unsupported response",details:{response:d}})},Je=()=>{var e;return"DigitalCredential"in window&&"function"==typeof window.DigitalCredential&&"function"==typeof(null===(e=null===navigator||void 0===navigator?void 0:navigator.credentials)||void 0===e?void 0:e.get)};var Ye;!function(e){e.FailedToStoreChallenge="Failed to store challenge",e.FailedToCreateSession="Failed to create session"}(Ye||(Ye={}));const We=async t=>{const{challenge:r,apiBaseUrl:n,applicationId:i,sessionUrl:s,sessionKey:o,sessionId:a}=t,c=ke({sessionId:a,sessionKey:o});var d;window.localStorage.setItem(ie.sessionId,a),window.localStorage.setItem(ie.challenge,r),window.location.assign(s),await(d=3e3,new Promise((e=>setTimeout(e,d))));const p=await De((async()=>{const t=await(async({apiBaseUrl:e,sessionId:t,sessionKey:r})=>{const n=await me(`${e}/v2/presentations/sessions/${t}/status`,{method:"GET",headers:{Authorization:`Bearer ${r}`}});if(n.isErr())return l(n.error);const i=await n.value.json();return $(ne)(i)?u(i):l({type:ve.UnexpectedResponse,message:"Get session status return unsupported response"})})({apiBaseUrl:n,applicationId:i,sessionId:a,sessionKey:o});if(c.signal.aborted)return l({type:e.RequestCredentialsErrorType.Abort,message:pe.Abort});if(t.isErr()){if(404===t.error.status)return l({type:e.RequestCredentialsErrorType.Timeout,message:pe.Timeout});throw Error("Unexpected status response. Retry")}if(t.value.status!==J.ResultReady)throw Error("Result is not ready. Retry");return u(void 0)}),{retries:1e3,retryDelay:3e3});return p.isErr()?l(p.error):(window.close(),u({sessionId:a,sessionCompletedInRedirect:!0}))},Xe=t=>{if(!t)return;let r;var n;return t&&t.mode?r=t.mode:(n=navigator.userAgent,r=Oe({ua:n,tablet:!1})?e.Mode.SameDevice:e.Mode.CrossDevice),r===e.Mode.SameDevice&&!$(ue)(t)&&t.redirectUri?t.redirectUri:void 0};var Ze;e.HandleRedirectCallbackErrorType=void 0,(e.HandleRedirectCallbackErrorType||(e.HandleRedirectCallbackErrorType={})).HandleRedirectCallbackFailed="HandleRedirectCallbackFailed",function(e){e.FailedToFindResponseCode="Failed to find response code",e.FailedToFindChallenge="Failed to find challenge",e.FailedToFindActiveSession="Failed to find active session",e.FailedToGetSessionResult="Failed to get session result"}(Ze||(Ze={}));const et={generateChallenge:Me,getVersion:()=>se,unwrap:(e,r)=>{if(e.isOk())return e.value;throw new t(null!=r?r:"Error unwrapping result",e.error)}};e.abortCredentialRequest=Ge,e.handleRedirectCallback=async()=>{const r=we();if(!r)throw new t(be.SdkNotInitialised);const{apiBaseUrl:n}=r,i=(s=window.location.hash,o="response_code",new URLSearchParams(s.split("#")[1]).get(o));var s,o;if(!i)return l({type:e.HandleRedirectCallbackErrorType.HandleRedirectCallbackFailed,message:Ze.FailedToFindResponseCode});const a=window.localStorage.getItem(ie.sessionId),c=window.localStorage.getItem(ie.challenge);if(!a||!c)return l({type:e.HandleRedirectCallbackErrorType.HandleRedirectCallbackFailed,message:Ze.FailedToFindActiveSession});const d=await Be({challenge:c,responseCode:i,sessionId:a,apiBaseUrl:n});return d.isErr()?l({type:e.HandleRedirectCallbackErrorType.HandleRedirectCallbackFailed,message:Ze.FailedToGetSessionResult,cause:d.error}):u({result:"challenge"in d.value?d.value:void 0,sessionId:d.value.sessionId})},e.initialise=e=>{G(fe,"Invalid initialise options")(e),ge=e},e.isDigitalCredentialsApiSupported=Je,e.requestCredentials=async r=>{var n;const i=we();if(!i)throw new t(be.SdkNotInitialised);G(ce,"Invalid request credential options")(r);const{apiBaseUrl:s,applicationId:o}=i,{challenge:a=Me(),credentialQuery:c,openid4vpConfiguration:d}=r,p=Je(),y=Xe(d),f=await(async({credentialQuery:e,challenge:t,redirectUri:r,apiBaseUrl:n,walletProviderId:i,dcApiSupported:s,applicationId:o})=>{const a={credentialQuery:e,challenge:t,applicationId:o,redirectUri:r,walletProviderId:i,dcApiSupported:s},c=await me(`${n}/v2/presentations/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(c.isErr())return l(c.error);const d=await c.value.json();return $(re)(d)?u(d):l({type:ve.UnexpectedResponse,message:"Create session returned unsupported response"})})({credentialQuery:c,challenge:a,redirectUri:y,walletProviderId:null!==(n=null==d?void 0:d.walletProviderId)&&void 0!==n?n:void 0,apiBaseUrl:s,applicationId:o,dcApiSupported:p});if(f.isErr())return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.FailedToCreateSession,cause:f.error});const v=f.value,{sessionKey:h,sessionId:m}=v;if(v.type===ee.DigitalCredentialsApi){const{request:t,sessionTtl:r}=v;return await(async t=>{const{apiBaseUrl:r,sessionId:n,sessionKey:i,challenge:s,request:o,sessionTtl:a}=t,c=window.setTimeout((()=>Ie()),1e3*a),d=ke({sessionId:n,sessionKey:i,sessionTimeoutId:c}),p=await Le(o,d);if(p.isErr())return await Ge(),l(p.error);const y=p.value,f=Qe(y);if(f.isErr())return await Ge(),l(f.error);const v=f.value,h=await ze({apiBaseUrl:r,sessionId:n,sessionKey:i,challenge:s,protocol:v.protocol,data:v.data});return h.isErr()?l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.FailedToVerifyCredentialResponse,cause:h.error}):u(h.value)})({apiBaseUrl:s,request:t,sessionId:m,sessionKey:h,challenge:a,sessionTtl:r})}if(!d)return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.MissingOpenId4vpConfig});const{sessionUrl:g}=v;return y?await We({challenge:a,apiBaseUrl:s,applicationId:o,sessionUrl:g,sessionKey:h,sessionId:m}):await $e({challenge:a,apiBaseUrl:s,sessionUrl:g,sessionKey:h,sessionId:m})},e.utils=et,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
36
|
+
function r(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{u(n.next(e))}catch(e){s(e)}}function a(e){try{u(n.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}u((n=n.apply(e,t||[])).next())}))}function n(e,t){var r,n,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function i(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,s=r.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(n=s.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=s.return)&&r.call(s)}finally{if(i)throw i.error}}return o}var s,o={withStackTrace:!1},a=function(e,t,r){return void 0===r&&(r=o),{data:t.isOk()?{type:"Ok",value:t.value}:{type:"Err",value:t.error},message:e,stack:r.withStackTrace?(new Error).stack:void 0}};!function(e){e.fromThrowable=function(e,t){return function(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];try{var s=e.apply(void 0,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(i(arguments[t]));return e}(r));return u(s)}catch(e){return l(t?t(e):e)}}}}(s||(s={}));var u=function(e){return new c(e)},l=function(e){return new d(e)},c=function(){function e(e){this.value=e}return e.prototype.isOk=function(){return!0},e.prototype.isErr=function(){return!this.isOk()},e.prototype.map=function(e){return u(e(this.value))},e.prototype.mapErr=function(e){return u(this.value)},e.prototype.andThen=function(e){return e(this.value)},e.prototype.orElse=function(e){return u(this.value)},e.prototype.asyncAndThen=function(e){return e(this.value)},e.prototype.asyncMap=function(e){return h.fromSafePromise(e(this.value))},e.prototype.unwrapOr=function(e){return this.value},e.prototype.match=function(e,t){return e(this.value)},e.prototype._unsafeUnwrap=function(e){return this.value},e.prototype._unsafeUnwrapErr=function(e){throw a("Called `_unsafeUnwrapErr` on an Ok",this,e)},e}(),d=function(){function e(e){this.error=e}return e.prototype.isOk=function(){return!1},e.prototype.isErr=function(){return!this.isOk()},e.prototype.map=function(e){return l(this.error)},e.prototype.mapErr=function(e){return l(e(this.error))},e.prototype.andThen=function(e){return l(this.error)},e.prototype.orElse=function(e){return e(this.error)},e.prototype.asyncAndThen=function(e){return m(this.error)},e.prototype.asyncMap=function(e){return m(this.error)},e.prototype.unwrapOr=function(e){return e},e.prototype.match=function(e,t){return t(this.error)},e.prototype._unsafeUnwrap=function(e){throw a("Called `_unsafeUnwrap` on an Err",this,e)},e.prototype._unsafeUnwrapErr=function(e){return this.error},e}();s.fromThrowable;var p,y,f,v,h=function(){function e(e){this._promise=e}return e.fromSafePromise=function(t){return new e(t.then((function(e){return new c(e)})))},e.fromPromise=function(t,r){return new e(t.then((function(e){return new c(e)})).catch((function(e){return new d(r(e))})))},e.prototype.map=function(t){var i=this;return new e(this._promise.then((function(e){return r(i,void 0,void 0,(function(){var r;return n(this,(function(n){switch(n.label){case 0:return e.isErr()?[2,new d(e.error)]:(r=c.bind,[4,t(e.value)]);case 1:return[2,new(r.apply(c,[void 0,n.sent()]))]}}))}))})))},e.prototype.mapErr=function(t){var i=this;return new e(this._promise.then((function(e){return r(i,void 0,void 0,(function(){var r;return n(this,(function(n){switch(n.label){case 0:return e.isOk()?[2,new c(e.value)]:(r=d.bind,[4,t(e.error)]);case 1:return[2,new(r.apply(d,[void 0,n.sent()]))]}}))}))})))},e.prototype.andThen=function(t){return new e(this._promise.then((function(r){if(r.isErr())return new d(r.error);var n=t(r.value);return n instanceof e?n._promise:n})))},e.prototype.orElse=function(t){var i=this;return new e(this._promise.then((function(e){return r(i,void 0,void 0,(function(){return n(this,(function(r){return e.isErr()?[2,t(e.error)]:[2,new c(e.value)]}))}))})))},e.prototype.match=function(e,t){return this._promise.then((function(r){return r.match(e,t)}))},e.prototype.unwrapOr=function(e){return this._promise.then((function(t){return t.unwrapOr(e)}))},e.prototype.then=function(e,t){return this._promise.then(e,t)},e}(),m=function(e){return new h(Promise.resolve(new d(e)))};function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function b(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=k(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,o=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,s=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw s}}}}function w(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function C(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function E(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?C(Object(r),!0).forEach((function(t){w(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):C(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function T(e){return function(e){if(Array.isArray(e))return g(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||k(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e){return S="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},S(e)}function k(e,t){if(e){if("string"==typeof e)return g(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?g(e,t):void 0}}function I(e){var t,r,n=S(e);return"string"===n?'"'.concat(e,'"'):"number"===n||"bigint"===n||"boolean"===n?"".concat(e):"object"===n||"function"===n?null!==(t=e&&(null===(r=Object.getPrototypeOf(e))||void 0===r||null===(r=r.constructor)||void 0===r?void 0:r.name))&&void 0!==t?t:"null":n}function R(e,t,r,n,i){var s,o,a,u,l,c,d,p,h,m,g,b=i&&"input"in i?i.input:r.value,w=null!==(s=null!==(o=null==i?void 0:i.expected)&&void 0!==o?o:e.expects)&&void 0!==s?s:null,C=null!==(a=null==i?void 0:i.received)&&void 0!==a?a:I(b),E={kind:e.kind,type:e.type,input:b,expected:w,received:C,message:"Invalid ".concat(t,": ").concat(w?"Expected ".concat(w," but r"):"R","eceived ").concat(C),requirement:e.requirement,path:null==i?void 0:i.path,issues:null==i?void 0:i.issues,lang:n.lang,abortEarly:n.abortEarly,abortPipeEarly:n.abortPipeEarly},T="schema"===e.kind,S=null!==(u=null!==(l=null!==(c=null!==(d=null!==(p=null==i?void 0:i.message)&&void 0!==p?p:e.message)&&void 0!==d?d:(h=e.reference,m=E.lang,null===(g=v)||void 0===g||null===(g=g.get(h))||void 0===g?void 0:g.get(m)))&&void 0!==c?c:T?function(e){var t;return null===(t=f)||void 0===t?void 0:t.get(e)}(E.lang):null)&&void 0!==l?l:n.message)&&void 0!==u?u:function(e){var t;return null===(t=y)||void 0===t?void 0:t.get(e)}(E.lang);S&&(E.message="function"==typeof S?S(E):S),T&&(r.typed=!1),r.issues?r.issues.push(E):r.issues=[E]}function O(e,t){return Object.hasOwn(e,t)&&"__proto__"!==t&&"prototype"!==t&&"constructor"!==t}function A(e,t){var r,n=T(new Set(e));return n.length>1?"(".concat(n.join(" ".concat(t," ")),")"):null!==(r=n[0])&&void 0!==r?r:"never"}function P(e){return{kind:"validation",type:"non_empty",reference:P,async:!1,expects:"!0",message:e,_run:function(e,t){return e.typed&&0===e.value.length&&R(this,"length",e,t,{received:"0"}),e}}}function U(e,t){return{kind:"schema",type:"array",reference:U,expects:"Array",async:!1,item:e,message:t,_run:function(e,t){var r=e.value;if(Array.isArray(r)){e.typed=!0,e.value=[];for(var n=0;n<r.length;n++){var i=r[n],s=this.item._run({typed:!1,value:i},t);if(s.issues){var o,a={type:"array",origin:"value",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path?c.path.unshift(a):c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}s.typed||(e.typed=!1),e.value.push(s.value)}}else R(this,"type",e,t);return e}}}function F(e){return{kind:"schema",type:"boolean",reference:F,expects:"boolean",async:!1,message:e,_run:function(e,t){return"boolean"==typeof e.value?e.typed=!0:R(this,"type",e,t),e}}}function j(e,t){return{kind:"schema",type:"literal",reference:j,expects:I(e),async:!1,literal:e,message:t,_run:function(e,t){return e.value===this.literal?e.typed=!0:R(this,"type",e,t),e}}}function x(e,t){return{kind:"schema",type:"object",reference:x,expects:"Object",async:!1,entries:e,message:t,_run:function(e,t){var r=e.value;if(r&&"object"===S(r))for(var n in e.typed=!0,e.value={},this.entries){var i=r[n],s=this.entries[n]._run({typed:!1,value:i},t);if(s.issues){var o,a={type:"object",origin:"value",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path?c.path.unshift(a):c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}s.typed||(e.typed=!1),(void 0!==s.value||n in r)&&(e.value[n]=s.value)}else R(this,"type",e,t);return e}}}function _(e){for(var t={kind:"schema",type:"optional",reference:_,expects:"(".concat(e.expects," | undefined)"),async:!1,wrapped:e,_run:function(e,t){return void 0===e.value&&("default"in this&&(e.value=function(e,t,r){return"function"==typeof e.default?e.default(t,r):e.default}(this,e,t)),void 0===e.value)?(e.typed=!0,e):this.wrapped._run(e,t)}},r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return 0 in n&&(t.default=n[0]),t}function D(e,t){return{kind:"schema",type:"picklist",reference:D,expects:A(e.map(I),"|"),async:!1,options:e,message:t,_run:function(e,t){return this.options.includes(e.value)?e.typed=!0:R(this,"type",e,t),e}}}function q(e,t,r){return{kind:"schema",type:"record",reference:q,expects:"Object",async:!1,key:e,value:t,message:r,_run:function(e,t){var r=e.value;if(r&&"object"===S(r)){for(var n in e.typed=!0,e.value={},r)if(O(r,n)){var i=r[n],s=this.key._run({typed:!1,value:n},t);if(s.issues){var o,a={type:"object",origin:"key",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}var d=this.value._run({typed:!1,value:i},t);if(d.issues){var p,y={type:"object",origin:"value",input:r,key:n,value:i},f=b(d.issues);try{for(f.s();!(p=f.n()).done;){var v,h=p.value;h.path?h.path.unshift(y):h.path=[y],null===(v=e.issues)||void 0===v||v.push(h)}}catch(e){f.e(e)}finally{f.f()}if(e.issues||(e.issues=d.issues),t.abortEarly){e.typed=!1;break}}s.typed&&d.typed||(e.typed=!1),s.typed&&(e.value[s.value]=d.value)}}else R(this,"type",e,t);return e}}}function M(e){return{kind:"schema",type:"string",reference:M,expects:"string",async:!1,message:e,_run:function(e,t){return"string"==typeof e.value?e.typed=!0:R(this,"type",e,t),e}}}function B(e){var t;if(e){var r,n=b(e);try{for(n.s();!(r=n.n()).done;){var i,s=r.value;if(t)(i=t).push.apply(i,T(s.issues));else t=s.issues}}catch(e){n.e(e)}finally{n.f()}}return t}function K(e,t){return{kind:"schema",type:"union",reference:K,expects:A(e.map((function(e){return e.expects})),"|"),async:!1,options:e,message:t,_run:function(e,t){var r,n,i,s,o,a=b(this.options);try{for(a.s();!(o=a.n()).done;){var u=o.value._run({typed:!1,value:e.value},t);if(u.typed){if(!u.issues){n=u;break}i?i.push(u):i=[u]}else s?s.push(u):s=[u]}}catch(e){a.e(e)}finally{a.f()}if(n)return n;if(i){if(1===i.length)return i[0];R(this,"type",e,t,{issues:B(i)}),e.typed=!0}else{if(1===(null===(r=s)||void 0===r?void 0:r.length))return s[0];R(this,"type",e,t,{issues:B(s)})}return e}}}function N(){return{kind:"schema",type:"unknown",reference:N,expects:"unknown",async:!1,_run:function(e){return e.typed=!0,e}}}function H(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return E(E({},t[0]),{},{pipe:t,_run:function(e,r){for(var n=0,i=t;n<i.length;n++){var s=i[n];if("metadata"!==s.kind){if(e.issues&&("schema"===s.kind||"transformation"===s.kind)){e.typed=!1;break}e.issues&&(r.abortEarly||r.abortPipeEarly)||(e=s._run(e,r))}}return e}})}function V(e,t,r){var n=e._run({typed:!1,value:t},function(e){var t,r,n,i,s,o;return{lang:null!==(t=null==e?void 0:e.lang)&&void 0!==t?t:null===(r=p)||void 0===r?void 0:r.lang,message:null==e?void 0:e.message,abortEarly:null!==(n=null==e?void 0:e.abortEarly)&&void 0!==n?n:null===(i=p)||void 0===i?void 0:i.abortEarly,abortPipeEarly:null!==(s=null==e?void 0:e.abortPipeEarly)&&void 0!==s?s:null===(o=p)||void 0===o?void 0:o.abortPipeEarly}}(r));return{typed:n.typed,success:!n.issues,output:n.value,issues:n.issues}}h.fromPromise,h.fromSafePromise;const $=e=>t=>V(e,t).success,z=(e,r)=>n=>{const i=((e,t)=>{const r=V(t,e);return r.success?u(r.output):l(r.issues.map((({message:e,path:t})=>({message:e,path:null==t?void 0:t.map((e=>e.key))}))))})(n,e);if(i.isErr())throw new t(r,{data:n,errors:i.error})};var G,L,Q,J;e.MobileCredentialVerificationReasonType=void 0,(G=e.MobileCredentialVerificationReasonType||(e.MobileCredentialVerificationReasonType={})).TrustedIssuerCertificateExpired="TrustedIssuerCertificateExpired",G.TrustedIssuerCertificateNotYetValid="TrustedIssuerCertificateNotYetValid",G.IssuerNotTrusted="IssuerNotTrusted",G.MobileCredentialInvalid="MobileCredentialInvalid",G.MobileCredentialExpired="MobileCredentialExpired",G.MobileCredentialNotYetValid="MobileCredentialNotYetValid",G.InvalidSignerCertificate="InvalidSignerCertificate",G.DeviceKeyInvalid="DeviceKeyInvalid",G.UnsupportedCurve="UnsupportedCurve",G.StatusRevoked="StatusRevoked",G.StatusSuspended="StatusSuspended",G.StatusUnknown="StatusUnknown",e.ClaimType=void 0,(L=e.ClaimType||(e.ClaimType={})).Boolean="boolean",L.Number="number",L.String="string",L.Binary="binary",L.Date="date",L.DateTime="dateTime",L.Array="array",L.Object="object",e.CredentialBrandingImageFormat=void 0,(Q=e.CredentialBrandingImageFormat||(e.CredentialBrandingImageFormat={})).svg="svg",Q.png="png",e.MobileCredentialResponseErrorCode=void 0,(e.MobileCredentialResponseErrorCode||(e.MobileCredentialResponseErrorCode={})).NotReturned="notReturned",e.OpenidPresentationCredentialProfileSupported=void 0,(e.OpenidPresentationCredentialProfileSupported||(e.OpenidPresentationCredentialProfileSupported={})).MOBILE="mobile",function(e){e.AwaitingRequestRetrieval="AwaitingRequestRetrieval",e.AwaitingResponse="AwaitingResponse",e.ResponseSubmitted="ResponseSubmitted",e.ResultReady="ResultReady"}(J||(J={}));const Y=x({profile:D([e.OpenidPresentationCredentialProfileSupported.MOBILE]),docType:M(),nameSpaces:q(M(),q(M(),function e(t,r){return{kind:"schema",type:"strict_object",reference:e,expects:"Object",async:!1,entries:t,message:r,_run:function(e,t){var r=e.value;if(r&&"object"===S(r)){for(var n in e.typed=!0,e.value={},this.entries){var i=r[n],s=this.entries[n]._run({typed:!1,value:i},t);if(s.issues){var o,a={type:"object",origin:"value",input:r,key:n,value:i},u=b(s.issues);try{for(u.s();!(o=u.n()).done;){var l,c=o.value;c.path?c.path.unshift(a):c.path=[a],null===(l=e.issues)||void 0===l||l.push(c)}}catch(e){u.e(e)}finally{u.f()}if(e.issues||(e.issues=s.issues),t.abortEarly){e.typed=!1;break}}s.typed||(e.typed=!1),(void 0!==s.value||n in r)&&(e.value[n]=s.value)}if(!e.issues||!t.abortEarly)for(var d in r)if(!(d in this.entries)){var p=r[d];R(this,"type",e,t,{input:p,expected:"never",path:[{type:"object",origin:"value",input:r,key:d,value:p}]});break}}else R(this,"type",e,t);return e}}}({intentToRetain:_(F())})))});var W;!function(e){e.SessionAborted="SessionAborted",e.VerificationError="VerificationError",e.ResponseError="ResponseError",e.WalletUnavailable="WalletUnavailable",e.Unknown="Unknown"}(W||(W={}));const X=x({sessionId:M(),challenge:_(M()),credentialQuery:_(N()),credentials:_(N()),credentialErrors:_(N()),error:_(N())});var Z,ee;e.Mode=void 0,(Z=e.Mode||(e.Mode={})).SameDevice="sameDevice",Z.CrossDevice="crossDevice",function(e){e.DigitalCredentialsApi="digital-credentials-api",e.Openid4vp="openid4vp"}(ee||(ee={})),x({credentialQuery:U(Y),challenge:M(),redirectUri:_(M()),walletProviderId:_(M()),dcApiSupported:_(F())});const te=x({type:j(ee.DigitalCredentialsApi),sessionId:M(),sessionKey:M(),sessionTtl:function e(t){return{kind:"schema",type:"number",reference:e,expects:"number",async:!1,message:t,_run:function(e,t){return"number"!=typeof e.value||isNaN(e.value)?R(this,"type",e,t):e.typed=!0,e}}}(),request:q(M(),function e(){return{kind:"schema",type:"any",reference:e,expects:"any",async:!1,_run:function(e){return e.typed=!0,e}}}())}),re=K([te,x({type:_(j(ee.Openid4vp)),sessionId:M(),sessionKey:M(),sessionUrl:M()})]),ne=K([x({status:D([J.ResultReady]),responseCode:_(M())}),x({status:M()})]);var ie;!function(e){e.challenge="mattr_chg",e.sessionId="mattr_sid"}(ie||(ie={}));const se="2.0.0";var oe;!function(e){e.PresentationCompleted="PresentationCompleted",e.PresentationTimeout="PresentationTimeout",e.PresentationAbort="PresentationAbort"}(oe||(oe={}));const ae=x({walletProviderId:_(M()),mode:j(e.Mode.SameDevice),redirectUri:M()}),ue=x({walletProviderId:_(M()),mode:j(e.Mode.CrossDevice)}),le=x({walletProviderId:_(M()),redirectUri:M(),mode:_(D([e.Mode.CrossDevice,e.Mode.SameDevice]))}),ce=x({credentialQuery:H(U(Y),P()),challenge:_(M()),openid4vpConfiguration:_(K([ae,ue,le]))});var de,pe,ye;e.RequestCredentialsErrorType=void 0,(de=e.RequestCredentialsErrorType||(e.RequestCredentialsErrorType={})).RequestCredentialsFailed="RequestCredentialsFailed",de.Timeout="Timeout",de.Abort="Abort",function(e){e.FailedToGetSessionResult="Failed to get session result",e.FailedToGetSessionStatus="Failed to get session status",e.FailedToCreateSession="Failed to create session",e.FailedToVerifyCredentialResponse="Failed to verify credential response",e.MissingOpenId4vpConfig="Identified openid4vp session, but missing openId4vpConfiguration on `requestCredentials`",e.DcApiError="Failed to request credentials with Digital Credentials API",e.DcApiResponseParseError="Failed to parse response from Digital Credentials API",e.Abort="User aborted the session",e.Timeout="User session timeout"}(pe||(pe={})),e.AbortSessionErrorType=void 0,(e.AbortSessionErrorType||(e.AbortSessionErrorType={})).AbortSessionFailed="AbortSessionFailed",function(e){e.FailedToAbortSession="Failed to abort session"}(ye||(ye={}));const fe=x({apiBaseUrl:H(M(),P("Must not be empty")),applicationId:H(M(),P("Must not be empty"))});var ve,he;!function(e){e.UnexpectedResponse="UnexpectedResponse"}(ve||(ve={})),function(e){e.HttpError="HttpError",e.UnknownError="UnknownError"}(he||(he={}));const me=async(e,t)=>{try{const r=Object.assign(Object.assign({},null==t?void 0:t.headers),{"x-mattr-sdk-version":`verifier-sdk-web/${se}`}),n=await fetch(e,Object.assign(Object.assign({},t),{headers:r}));return n.status>299||n.status<200?l({type:he.HttpError,message:`HTTP error, status = ${n.status}`,status:n.status}):u(n)}catch(e){return l({type:he.UnknownError,message:"Unknown error",cause:e})}};let ge;var be;!function(e){e.SdkNotInitialized="SDK not initialized"}(be||(be={}));const we=()=>ge;let Ce,Ee,Te,Se;const ke=e=>{const{sessionId:t,sessionKey:r,sessionTimeoutId:n}=e;Ee=t,Te=r,Se=n;const i=new AbortController;return Ce=i,i},Ie=()=>{null==Ce||Ce.abort(),Se&&window.clearTimeout(Se),Ce=void 0,Te=void 0,Ee=void 0,Se=void 0};var Re=je,Oe=je,Ae=je,Pe=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Ue=/CrOS/,Fe=/android|ipad|playbook|silk/i;function je(e){e||(e={});var t=e.ua;if(t||"undefined"==typeof navigator||(t=navigator.userAgent),t&&t.headers&&"string"==typeof t.headers["user-agent"]&&(t=t.headers["user-agent"]),"string"!=typeof t)return!1;var r=Pe.test(t)&&!Ue.test(t)||!!e.tablet&&Fe.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==t.indexOf("Macintosh")&&-1!==t.indexOf("Safari")&&(r=!0),r}Re.isMobile=Oe,Re.default=Ae;const xe=e=>1e3*Math.pow(2,e),_e=2,De=async(e,t)=>{const{retries:r=_e,retryDelay:n=xe,attempt:i=0}=t;try{return await e()}catch(s){if(r>0){const s="function"==typeof n?n(i):n;return await new Promise((e=>setTimeout(e,s))),await De(e,Object.assign(Object.assign({},t),{retries:r-1,retryDelay:n,attempt:i+1}))}throw s}},qe=async(e,t)=>{const{retries:r=_e,retryDelay:n=xe,attempt:i=0,retryHttpStatus:s}=t,o=await e();if(o.isErr()&&o.error.status===s&&r>0){const s="function"==typeof n?n(i):n;return await new Promise((e=>setTimeout(e,s))),await qe(e,Object.assign(Object.assign({},t),{retries:r-1,retryDelay:n,attempt:i+1}))}return o},Me=()=>{const e=window.crypto.getRandomValues(new Uint8Array(32)),t=String.fromCharCode(...Array.from(e));return window.btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},Be=async({challenge:e,responseCode:t,sessionId:r,apiBaseUrl:n})=>{const i={challenge:e,responseCode:t},s=await qe((async()=>await me(`${n}/v2/presentations/sessions/${r}/result`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)})),{retries:2,retryHttpStatus:404});if(s.isErr())return l(s.error);const o=await s.value.json();return $(X)(o)?u(o):l({type:ve.UnexpectedResponse,message:"Exchange session result return unsupported response",details:{data:o}})};var Ke;let Ne;!function(e){e.message="message"}(Ke||(Ke={}));const He=()=>{Ne&&window.removeEventListener(Ke.message,Ne,!1),Ne=void 0},Ve=e=>{const{container:t}=e;document.body.contains(t)&&document.body.removeChild(t),He()},$e=async t=>{const{challenge:r,apiBaseUrl:n,sessionUrl:i,sessionId:s,sessionKey:o}=t,a=(e=>{const{sessionUrl:t}=e,r=document.createElement("div"),n=document.createElement("iframe");n.src=t,n.setAttribute("style","border: none !important; width: 100% !important; height: 100% !important; position: absolute !important; top: 0 !important; left: 0 !important; animation: openOnlinePresentationModal 0.4s 0s linear forwards;");const i=document.createElement("style");return i.innerHTML="@keyframes openOnlinePresentationModal {\n 0% {\n opacity: 0;\n transform: scale(0.95)\n }\n 100% {\n opacity: 100%;\n transform: scale(1)\n }\n }",r.appendChild(i),r.appendChild(n),document.body.appendChild(r),r.setAttribute("style","background: rgba(0, 0, 0, 0.5) !important; position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; z-index: 999;"),r.setAttribute("class","mattr-verifier-modal-container"),r})({sessionUrl:i});return await new Promise((t=>{ke({sessionId:s,sessionKey:o}).signal.addEventListener("abort",(()=>{Ve({container:a}),t(l({type:e.RequestCredentialsErrorType.Abort,message:pe.Abort}))})),He(),Ne=(t=>async r=>{const{onComplete:n,onFailure:i,container:s,sessionId:o,apiBaseUrl:a,challenge:u}=t;if(r.origin===a){if(r.data.type===oe.PresentationCompleted&&r.data.responseCode&&r.data.sessionId){const t=r.data.responseCode,l=await Be({challenge:u,responseCode:t,sessionId:o,apiBaseUrl:a});return l.isErr()?(i({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.FailedToGetSessionResult}),void Ve({container:s})):(n({result:"challenge"in l.value?l.value:void 0,sessionId:l.value.sessionId,sessionCompletedInRedirect:!1}),void Ve({container:s}))}return r.data.type===oe.PresentationTimeout?(i({type:e.RequestCredentialsErrorType.Timeout,message:pe.Timeout}),void Ve({container:s})):r.data.type===oe.PresentationAbort?(i({type:e.RequestCredentialsErrorType.Abort,message:pe.Abort}),void Ve({container:s})):void 0}})({container:a,sessionId:s,apiBaseUrl:n,challenge:r,onComplete:e=>t(u(e)),onFailure:e=>t(l(e))}),window.addEventListener(Ke.message,Ne,!1)}))},ze=async()=>{const r=we();if(!r)throw new t(be.SdkNotInitialized);const{apiBaseUrl:n}=r,i=(()=>{if(Ee)return{sessionId:Ee,sessionKey:Te,sessionTimeoutId:Se}})();if(!i||!i.sessionKey)return u(void 0);const{sessionId:s,sessionKey:o}=i;Ie();const a=await(async({apiBaseUrl:e,sessionId:t,sessionKey:r})=>{const n=await me(`${e}/v2/presentations/sessions/${t}/abort`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r}`}});return n.isErr()?l(n.error):u(void 0)})({apiBaseUrl:n,sessionId:s,sessionKey:o});return a.isErr()?l({type:e.AbortSessionErrorType.AbortSessionFailed,message:ye.FailedToAbortSession,cause:a.error}):u(void 0)},Ge=async(t,r)=>{try{const e=await navigator.credentials.get(Object.assign(Object.assign({},t),{signal:r.signal}));return u(e)}catch(t){return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiError,cause:t})}},Le=t=>{if(!t)return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiResponseParseError,details:{response:t}});if("object"==typeof t)return u(t);if("string"==typeof t)try{const e=JSON.parse(t);return u(e)}catch(r){return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiResponseParseError,details:{response:t}})}return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.DcApiResponseParseError,details:{response:t}})},Qe=async e=>{const{apiBaseUrl:t,sessionId:r,sessionKey:n,challenge:i,protocol:s,data:o}=e,a={protocol:s,data:o,challenge:i},c=await me(`${t}/v2/presentations/sessions/${r}/dc-api/response`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`},body:JSON.stringify(a)});if(c.isErr())return l(c.error);const d=await c.value.json();return $(X)(d)?u(d):l({type:ve.UnexpectedResponse,message:"Verify credential returned unsupported response",details:{response:d}})},Je=()=>{var e;return"DigitalCredential"in window&&"function"==typeof window.DigitalCredential&&"function"==typeof(null===(e=null===navigator||void 0===navigator?void 0:navigator.credentials)||void 0===e?void 0:e.get)};var Ye;!function(e){e.FailedToStoreChallenge="Failed to store challenge",e.FailedToCreateSession="Failed to create session"}(Ye||(Ye={}));const We=async t=>{const{challenge:r,apiBaseUrl:n,applicationId:i,sessionUrl:s,sessionKey:o,sessionId:a}=t,c=ke({sessionId:a,sessionKey:o});var d;window.localStorage.setItem(ie.sessionId,a),window.localStorage.setItem(ie.challenge,r),window.location.assign(s),await(d=3e3,new Promise((e=>setTimeout(e,d))));const p=await De((async()=>{const t=await(async({apiBaseUrl:e,sessionId:t,sessionKey:r})=>{const n=await me(`${e}/v2/presentations/sessions/${t}/status`,{method:"GET",headers:{Authorization:`Bearer ${r}`}});if(n.isErr())return l(n.error);const i=await n.value.json();return $(ne)(i)?u(i):l({type:ve.UnexpectedResponse,message:"Get session status return unsupported response"})})({apiBaseUrl:n,applicationId:i,sessionId:a,sessionKey:o});if(c.signal.aborted)return l({type:e.RequestCredentialsErrorType.Abort,message:pe.Abort});if(t.isErr()){if(404===t.error.status)return l({type:e.RequestCredentialsErrorType.Timeout,message:pe.Timeout});throw Error("Unexpected status response. Retry")}if(t.value.status!==J.ResultReady)throw Error("Result is not ready. Retry");return u(void 0)}),{retries:1e3,retryDelay:3e3});return p.isErr()?l(p.error):(window.close(),u({sessionId:a,sessionCompletedInRedirect:!0}))},Xe=t=>{if(!t)return;let r;var n;return t&&t.mode?r=t.mode:(n=navigator.userAgent,r=Oe({ua:n,tablet:!1})?e.Mode.SameDevice:e.Mode.CrossDevice),r===e.Mode.SameDevice&&!$(ue)(t)&&t.redirectUri?t.redirectUri:void 0};var Ze;e.HandleRedirectCallbackErrorType=void 0,(e.HandleRedirectCallbackErrorType||(e.HandleRedirectCallbackErrorType={})).HandleRedirectCallbackFailed="HandleRedirectCallbackFailed",function(e){e.FailedToFindResponseCode="Failed to find response code",e.FailedToFindChallenge="Failed to find challenge",e.FailedToFindActiveSession="Failed to find active session",e.FailedToGetSessionResult="Failed to get session result"}(Ze||(Ze={}));const et={generateChallenge:Me,getVersion:()=>se,unwrap:(e,r)=>{if(e.isOk())return e.value;throw new t(null!=r?r:"Error unwrapping result",e.error)}};e.abortCredentialRequest=ze,e.handleRedirectCallback=async()=>{const r=we();if(!r)throw new t(be.SdkNotInitialized);const{apiBaseUrl:n}=r,i=(s=window.location.hash,o="response_code",new URLSearchParams(s.split("#")[1]).get(o));var s,o;if(!i)return l({type:e.HandleRedirectCallbackErrorType.HandleRedirectCallbackFailed,message:Ze.FailedToFindResponseCode});const a=window.localStorage.getItem(ie.sessionId),c=window.localStorage.getItem(ie.challenge);if(!a||!c)return l({type:e.HandleRedirectCallbackErrorType.HandleRedirectCallbackFailed,message:Ze.FailedToFindActiveSession});const d=await Be({challenge:c,responseCode:i,sessionId:a,apiBaseUrl:n});return d.isErr()?l({type:e.HandleRedirectCallbackErrorType.HandleRedirectCallbackFailed,message:Ze.FailedToGetSessionResult,cause:d.error}):u({result:"challenge"in d.value?d.value:void 0,sessionId:d.value.sessionId})},e.initialize=e=>{z(fe,"Invalid initialize options")(e),ge=e},e.isDigitalCredentialsApiSupported=Je,e.requestCredentials=async r=>{var n;const i=we();if(!i)throw new t(be.SdkNotInitialized);z(ce,"Invalid request credential options")(r);const{apiBaseUrl:s,applicationId:o}=i,{challenge:a=Me(),credentialQuery:c,openid4vpConfiguration:d}=r,p=Je(),y=Xe(d),f=await(async({credentialQuery:e,challenge:t,redirectUri:r,apiBaseUrl:n,walletProviderId:i,dcApiSupported:s,applicationId:o})=>{const a={credentialQuery:e,challenge:t,applicationId:o,redirectUri:r,walletProviderId:i,dcApiSupported:s},c=await me(`${n}/v2/presentations/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(c.isErr())return l(c.error);const d=await c.value.json();return $(re)(d)?u(d):l({type:ve.UnexpectedResponse,message:"Create session returned unsupported response"})})({credentialQuery:c,challenge:a,redirectUri:y,walletProviderId:null!==(n=null==d?void 0:d.walletProviderId)&&void 0!==n?n:void 0,apiBaseUrl:s,applicationId:o,dcApiSupported:p});if(f.isErr())return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.FailedToCreateSession,cause:f.error});const v=f.value,{sessionKey:h,sessionId:m}=v;if(v.type===ee.DigitalCredentialsApi){const{request:t,sessionTtl:r}=v;return await(async t=>{const{apiBaseUrl:r,sessionId:n,sessionKey:i,challenge:s,request:o,sessionTtl:a}=t,c=window.setTimeout((()=>Ie()),1e3*a),d=ke({sessionId:n,sessionKey:i,sessionTimeoutId:c}),p=await Ge(o,d);if(p.isErr())return await ze(),l(p.error);const y=p.value,f=Le(y);if(f.isErr())return await ze(),l(f.error);const v=f.value,h=await Qe({apiBaseUrl:r,sessionId:n,sessionKey:i,challenge:s,protocol:v.protocol,data:v.data});return h.isErr()?l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.FailedToVerifyCredentialResponse,cause:h.error}):u(h.value)})({apiBaseUrl:s,request:t,sessionId:m,sessionKey:h,challenge:a,sessionTtl:r})}if(!d)return l({type:e.RequestCredentialsErrorType.RequestCredentialsFailed,message:pe.MissingOpenId4vpConfig});const{sessionUrl:g}=v;return y?await We({challenge:a,apiBaseUrl:s,applicationId:o,sessionUrl:g,sessionKey:h,sessionId:m}):await $e({challenge:a,apiBaseUrl:s,sessionUrl:g,sessionKey:h,sessionId:m})},e.utils=et,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
37
37
|
//# sourceMappingURL=verifier-js.production.js.map
|