@mattrglobal/verifier-sdk-web 2.0.1-unstable.2 → 2.0.2

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.
@@ -8,7 +8,7 @@
8
8
  *
9
9
  * Bundle of @mattrglobal/verifier-sdk-web
10
10
  * Generated: 2025-05-29
11
- * Version: 2.0.1
11
+ * Version: 2.0.2
12
12
  * Dependencies:
13
13
  *
14
14
  * neverthrow -- 4.3.0
@@ -33,5 +33,5 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
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 t(e,t,n,r){return new(n||(n=Promise))((function(i,s){function o(e){try{u(r.next(e))}catch(e){s(e)}}function a(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,a)}u((r=r.apply(e,t||[])).next())}))}function n(e,t){var n,r,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(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=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++,r=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],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function r(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,s=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(r=s.next()).done;)o.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=s.return)&&n.call(s)}finally{if(i)throw i.error}}return o}var i,s={withStackTrace:!1},o=function(e,t,n){return void 0===n&&(n=s),{data:t.isOk()?{type:"Ok",value:t.value}:{type:"Err",value:t.error},message:e,stack:n.withStackTrace?(new Error).stack:void 0}};!function(e){e.fromThrowable=function(e,t){return function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];try{var s=e.apply(void 0,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(r(arguments[t]));return e}(n));return a(s)}catch(e){return u(t?t(e):e)}}}}(i||(i={}));var a=function(e){return new l(e)},u=function(e){return new c(e)},l=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 a(e(this.value))},e.prototype.mapErr=function(e){return a(this.value)},e.prototype.andThen=function(e){return e(this.value)},e.prototype.orElse=function(e){return a(this.value)},e.prototype.asyncAndThen=function(e){return e(this.value)},e.prototype.asyncMap=function(e){return v.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 o("Called `_unsafeUnwrapErr` on an Ok",this,e)},e}(),c=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 u(this.error)},e.prototype.mapErr=function(e){return u(e(this.error))},e.prototype.andThen=function(e){return u(this.error)},e.prototype.orElse=function(e){return e(this.error)},e.prototype.asyncAndThen=function(e){return h(this.error)},e.prototype.asyncMap=function(e){return h(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 o("Called `_unsafeUnwrap` on an Err",this,e)},e.prototype._unsafeUnwrapErr=function(e){return this.error},e}();i.fromThrowable;var p,d,f,y,v=function(){function e(e){this._promise=e}return e.fromSafePromise=function(t){return new e(t.then((function(e){return new l(e)})))},e.fromPromise=function(t,n){return new e(t.then((function(e){return new l(e)})).catch((function(e){return new c(n(e))})))},e.prototype.map=function(r){var i=this;return new e(this._promise.then((function(e){return t(i,void 0,void 0,(function(){var t;return n(this,(function(n){switch(n.label){case 0:return e.isErr()?[2,new c(e.error)]:(t=l.bind,[4,r(e.value)]);case 1:return[2,new(t.apply(l,[void 0,n.sent()]))]}}))}))})))},e.prototype.mapErr=function(r){var i=this;return new e(this._promise.then((function(e){return t(i,void 0,void 0,(function(){var t;return n(this,(function(n){switch(n.label){case 0:return e.isOk()?[2,new l(e.value)]:(t=c.bind,[4,r(e.error)]);case 1:return[2,new(t.apply(c,[void 0,n.sent()]))]}}))}))})))},e.prototype.andThen=function(t){return new e(this._promise.then((function(n){if(n.isErr())return new c(n.error);var r=t(n.value);return r instanceof e?r._promise:r})))},e.prototype.orElse=function(r){var i=this;return new e(this._promise.then((function(e){return t(i,void 0,void 0,(function(){return n(this,(function(t){return e.isErr()?[2,r(e.error)]:[2,new l(e.value)]}))}))})))},e.prototype.match=function(e,t){return this._promise.then((function(n){return n.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}(),h=function(e){return new v(Promise.resolve(new c(e)))};function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function g(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=S(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},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(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){a=!0,s=e},f:function(){try{o||null==n.return||n.return()}finally{if(a)throw s}}}}function b(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;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:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function w(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function k(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?w(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):w(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function E(e){return function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||S(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 I(e){return I="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},I(e)}function S(e,t){if(e){if("string"==typeof e)return m(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m(e,t):void 0}}function C(e){var t,n,r,i,s,o;return{lang:null!==(t=null==e?void 0:e.lang)&&void 0!==t?t:null===(n=p)||void 0===n?void 0:n.lang,message:null==e?void 0:e.message,abortEarly:null!==(r=null==e?void 0:e.abortEarly)&&void 0!==r?r: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}}function T(e){var t,n,r=I(e);return"string"===r?'"'.concat(e,'"'):"number"===r||"bigint"===r||"boolean"===r?"".concat(e):"object"===r||"function"===r?null!==(t=e&&(null===(n=Object.getPrototypeOf(e))||void 0===n||null===(n=n.constructor)||void 0===n?void 0:n.name))&&void 0!==t?t:"null":r}function U(e,t,n,r,i){var s,o,a,u,l,c,p,v,h,m,g,b=i&&"input"in i?i.input:n.value,w=null!==(s=null!==(o=null==i?void 0:i.expected)&&void 0!==o?o:e.expects)&&void 0!==s?s:null,k=null!==(a=null==i?void 0:i.received)&&void 0!==a?a:T(b),E={kind:e.kind,type:e.type,input:b,expected:w,received:k,message:"Invalid ".concat(t,": ").concat(w?"Expected ".concat(w," but r"):"R","eceived ").concat(k),requirement:e.requirement,path:null==i?void 0:i.path,issues:null==i?void 0:i.issues,lang:r.lang,abortEarly:r.abortEarly,abortPipeEarly:r.abortPipeEarly},I="schema"===e.kind,S=null!==(u=null!==(l=null!==(c=null!==(p=null!==(v=null==i?void 0:i.message)&&void 0!==v?v:e.message)&&void 0!==p?p:(h=e.reference,m=E.lang,null===(g=y)||void 0===g||null===(g=g.get(h))||void 0===g?void 0:g.get(m)))&&void 0!==c?c:I?function(e){var t;return null===(t=f)||void 0===t?void 0:t.get(e)}(E.lang):null)&&void 0!==l?l:r.message)&&void 0!==u?u:function(e){var t;return null===(t=d)||void 0===t?void 0:t.get(e)}(E.lang);void 0!==S&&(E.message="function"==typeof S?S(E):S),I&&(n.typed=!1),n.issues?n.issues.push(E):n.issues=[E]}function O(e){return{version:1,vendor:"valibot",validate:function(t){return e["~run"]({value:t},C())}}}function A(e,t){return Object.hasOwn(e,t)&&"__proto__"!==t&&"prototype"!==t&&"constructor"!==t}function R(e,t){var n,r=E(new Set(e));return r.length>1?"(".concat(r.join(" ".concat(t," ")),")"):null!==(n=r[0])&&void 0!==n?n:"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&&U(this,"length",e,t,{received:"0"}),e}}}function x(e){return{kind:"validation",type:"url",reference:x,async:!1,expects:null,requirement:function(e){try{return new URL(e),!0}catch(e){return!1}},message:e,"~run":function(e,t){return e.typed&&!this.requirement(e.value)&&U(this,"URL",e,t),e}}}function j(e,t,n){return"function"==typeof e.fallback?e.fallback(t,n):e.fallback}function F(e,t,n){return"function"==typeof e.default?e.default(t,n):e.default}function D(e,t){return{kind:"schema",type:"array",reference:D,expects:"Array",async:!1,item:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(Array.isArray(n)){e.typed=!0,e.value=[];for(var r=0;r<n.length;r++){var i=n[r],s=this.item["~run"]({value:i},t);if(s.issues){var o,a={type:"array",origin:"value",input:n,key:r,value:i},u=g(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 U(this,"type",e,t);return e}}}function B(e){return{kind:"schema",type:"boolean",reference:B,expects:"boolean",async:!1,message:e,get"~standard"(){return O(this)},"~run":function(e,t){return"boolean"==typeof e.value?e.typed=!0:U(this,"type",e,t),e}}}function _(e,t){return{kind:"schema",type:"literal",reference:_,expects:T(e),async:!1,literal:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){return e.value===this.literal?e.typed=!0:U(this,"type",e,t),e}}}function K(e,t){return{kind:"schema",type:"object",reference:K,expects:"Object",async:!1,entries:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(n&&"object"===I(n))for(var r in e.typed=!0,e.value={},this.entries){var i=this.entries[r];if(r in n||("exact_optional"===i.type||"optional"===i.type||"nullish"===i.type)&&void 0!==i.default){var s=r in n?n[r]:F(i),o=i["~run"]({value:s},t);if(o.issues){var a,u={type:"object",origin:"value",input:n,key:r,value:s},l=g(o.issues);try{for(l.s();!(a=l.n()).done;){var c,p=a.value;p.path?p.path.unshift(u):p.path=[u],null===(c=e.issues)||void 0===c||c.push(p)}}catch(e){l.e(e)}finally{l.f()}if(e.issues||(e.issues=o.issues),t.abortEarly){e.typed=!1;break}}o.typed||(e.typed=!1),e.value[r]=o.value}else if(void 0!==i.fallback)e.value[r]=j(i);else if("exact_optional"!==i.type&&"optional"!==i.type&&"nullish"!==i.type&&(U(this,"key",e,t,{input:void 0,expected:'"'.concat(r,'"'),path:[{type:"object",origin:"key",input:n,key:r,value:n[r]}]}),t.abortEarly))break}else U(this,"type",e,t);return e}}}function M(e,t){return{kind:"schema",type:"optional",reference:M,expects:"(".concat(e.expects," | undefined)"),async:!1,wrapped:e,default:t,get"~standard"(){return O(this)},"~run":function(e,t){return void 0===e.value&&(void 0!==this.default&&(e.value=F(this,e,t)),void 0===e.value)?(e.typed=!0,e):this.wrapped["~run"](e,t)}}}function q(e,t){return{kind:"schema",type:"picklist",reference:q,expects:R(e.map(T),"|"),async:!1,options:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){return this.options.includes(e.value)?e.typed=!0:U(this,"type",e,t),e}}}function N(e,t,n){return{kind:"schema",type:"record",reference:N,expects:"Object",async:!1,key:e,value:t,message:n,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(n&&"object"===I(n)){for(var r in e.typed=!0,e.value={},n)if(A(n,r)){var i=n[r],s=this.key["~run"]({value:r},t);if(s.issues){var o,a={type:"object",origin:"key",input:n,key:r,value:i},u=g(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 p=this.value["~run"]({value:i},t);if(p.issues){var d,f={type:"object",origin:"value",input:n,key:r,value:i},y=g(p.issues);try{for(y.s();!(d=y.n()).done;){var v,h=d.value;h.path?h.path.unshift(f):h.path=[f],null===(v=e.issues)||void 0===v||v.push(h)}}catch(e){y.e(e)}finally{y.f()}if(e.issues||(e.issues=p.issues),t.abortEarly){e.typed=!1;break}}s.typed&&p.typed||(e.typed=!1),s.typed&&(e.value[s.value]=p.value)}}else U(this,"type",e,t);return e}}}function $(e){return{kind:"schema",type:"string",reference:$,expects:"string",async:!1,message:e,get"~standard"(){return O(this)},"~run":function(e,t){return"string"==typeof e.value?e.typed=!0:U(this,"type",e,t),e}}}function H(e){var t;if(e){var n,r=g(e);try{for(r.s();!(n=r.n()).done;){var i,s=n.value;if(t)(i=t).push.apply(i,E(s.issues));else t=s.issues}}catch(e){r.e(e)}finally{r.f()}}return t}function z(e,t){return{kind:"schema",type:"union",reference:z,expects:R(e.map((function(e){return e.expects})),"|"),async:!1,options:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){var n,r,i,s,o,a=g(this.options);try{for(a.s();!(o=a.n()).done;){var u=o.value["~run"]({value:e.value},t);if(u.typed){if(!u.issues){r=u;break}i?i.push(u):i=[u]}else s?s.push(u):s=[u]}}catch(e){a.e(e)}finally{a.f()}if(r)return r;if(i){if(1===i.length)return i[0];U(this,"type",e,t,{issues:H(i)}),e.typed=!0}else{if(1===(null===(n=s)||void 0===n?void 0:n.length))return s[0];U(this,"type",e,t,{issues:H(s)})}return e}}}function V(){return{kind:"schema",type:"unknown",reference:V,expects:"unknown",async:!1,get"~standard"(){return O(this)},"~run":function(e){return e.typed=!0,e}}}function L(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return k(k({},t[0]),{},{pipe:t,get"~standard"(){return O(this)},"~run":function(e,n){for(var r=0,i=t;r<i.length;r++){var s=i[r];if("metadata"!==s.kind){if(e.issues&&("schema"===s.kind||"transformation"===s.kind)){e.typed=!1;break}e.issues&&(n.abortEarly||n.abortPipeEarly)||(e=s["~run"](e,n))}}return e}})}function G(e,t,n){var r=e["~run"]({value:t},C(n));return{typed:r.typed,success:!r.issues,output:r.value,issues:r.issues}}v.fromPromise,v.fromSafePromise;const Q=e=>t=>G(e,t).success,J=(e,t)=>{const n=G(t,e);return n.success?a(n.output):u((e=>{const t=({message:e,path:t})=>({message:e,path:null==t?void 0:t.map((e=>e.key))}),n=new Map;return e.flatMap((e=>"union"===e.type&&e.issues?e.issues.map(t):[t(e)])).forEach((e=>{const t=`${e.message}-${JSON.stringify(e.path)}`;n.has(t)||n.set(t,e)})),Array.from(n.values())})(n.issues))},Y=(t,n)=>r=>{const i=J(r,t);if(i.isErr())throw new e(n,{data:r,errors:i.error})};var W,X,Z,ee,te,ne;!function(e){e.TrustedIssuerCertificateExpired="TrustedIssuerCertificateExpired",e.TrustedIssuerCertificateNotYetValid="TrustedIssuerCertificateNotYetValid",e.IssuerNotTrusted="IssuerNotTrusted",e.MobileCredentialInvalid="MobileCredentialInvalid",e.MobileCredentialExpired="MobileCredentialExpired",e.MobileCredentialNotYetValid="MobileCredentialNotYetValid",e.InvalidSignerCertificate="InvalidSignerCertificate",e.DeviceKeyInvalid="DeviceKeyInvalid",e.UnsupportedCurve="UnsupportedCurve",e.StatusRevoked="StatusRevoked",e.StatusSuspended="StatusSuspended",e.StatusUnknown="StatusUnknown"}(W||(W={})),function(e){e.Boolean="boolean",e.Number="number",e.String="string",e.Binary="binary",e.Date="date",e.DateTime="dateTime",e.Array="array",e.Object="object"}(X||(X={})),function(e){e.svg="svg",e.png="png"}(Z||(Z={})),function(e){e.NotReturned="notReturned"}(ee||(ee={})),function(e){e.MOBILE="mobile"}(te||(te={})),function(e){e.AwaitingRequestRetrieval="AwaitingRequestRetrieval",e.AwaitingResponse="AwaitingResponse",e.ResponseSubmitted="ResponseSubmitted",e.ResultReady="ResultReady"}(ne||(ne={}));const re=K({profile:q([te.MOBILE]),docType:$(),nameSpaces:N($(),N($(),function e(t,n){return{kind:"schema",type:"strict_object",reference:e,expects:"Object",async:!1,entries:t,message:n,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(n&&"object"===I(n)){for(var r in e.typed=!0,e.value={},this.entries){var i=this.entries[r];if(r in n||("exact_optional"===i.type||"optional"===i.type||"nullish"===i.type)&&void 0!==i.default){var s=r in n?n[r]:F(i),o=i["~run"]({value:s},t);if(o.issues){var a,u={type:"object",origin:"value",input:n,key:r,value:s},l=g(o.issues);try{for(l.s();!(a=l.n()).done;){var c,p=a.value;p.path?p.path.unshift(u):p.path=[u],null===(c=e.issues)||void 0===c||c.push(p)}}catch(e){l.e(e)}finally{l.f()}if(e.issues||(e.issues=o.issues),t.abortEarly){e.typed=!1;break}}o.typed||(e.typed=!1),e.value[r]=o.value}else if(void 0!==i.fallback)e.value[r]=j(i);else if("exact_optional"!==i.type&&"optional"!==i.type&&"nullish"!==i.type&&(U(this,"key",e,t,{input:void 0,expected:'"'.concat(r,'"'),path:[{type:"object",origin:"key",input:n,key:r,value:n[r]}]}),t.abortEarly))break}if(!e.issues||!t.abortEarly)for(var d in n)if(!(d in this.entries)){U(this,"key",e,t,{input:d,expected:"never",path:[{type:"object",origin:"key",input:n,key:d,value:n[d]}]});break}}else U(this,"type",e,t);return e}}}({intentToRetain:M(B())})))});var ie;!function(e){e.SessionAborted="SessionAborted",e.VerificationError="VerificationError",e.ResponseError="ResponseError",e.WalletUnavailable="WalletUnavailable",e.Unknown="Unknown"}(ie||(ie={}));const se=K({sessionId:$(),challenge:M($()),credentialQuery:M(V()),credentials:M(V()),credentialErrors:M(V()),error:M(V())});var oe,ae;!function(e){e.SameDevice="sameDevice",e.CrossDevice="crossDevice"}(oe||(oe={})),function(e){e.DigitalCredentialsApi="digital-credentials-api",e.Openid4vp="openid4vp"}(ae||(ae={})),K({credentialQuery:D(re),challenge:$(),redirectUri:M($()),walletProviderId:M($()),dcApiSupported:M(B())});const ue=K({type:_(ae.DigitalCredentialsApi),sessionId:$(),sessionKey:$(),sessionTtl:function e(t){return{kind:"schema",type:"number",reference:e,expects:"number",async:!1,message:t,get"~standard"(){return O(this)},"~run":function(e,t){return"number"!=typeof e.value||isNaN(e.value)?U(this,"type",e,t):e.typed=!0,e}}}(),request:N($(),function e(){return{kind:"schema",type:"any",reference:e,expects:"any",async:!1,get"~standard"(){return O(this)},"~run":function(e){return e.typed=!0,e}}}())}),le=z([ue,K({type:M(_(ae.Openid4vp)),sessionId:$(),sessionKey:$(),sessionUrl:$()})]),ce=z([K({status:q([ne.ResultReady]),responseCode:M($())}),K({status:$()})]);var pe;!function(e){e.challenge="mattr_chg",e.sessionId="mattr_sid"}(pe||(pe={}));const de="2.0.1";var fe;!function(e){e.PresentationCompleted="PresentationCompleted",e.PresentationTimeout="PresentationTimeout",e.PresentationAbort="PresentationAbort"}(fe||(fe={}));const ye=K({walletProviderId:M($()),mode:_(oe.SameDevice),redirectUri:L($(),P("Must not be empty"),x())}),ve=K({walletProviderId:M($()),mode:_(oe.CrossDevice)}),he=K({walletProviderId:M($()),redirectUri:L($(),P("Must not be empty"),x()),mode:M(q([oe.CrossDevice,oe.SameDevice]))}),me=K({credentialQuery:L(D(re),P()),challenge:M($()),openid4vpConfiguration:M(z([ye,ve,he]))});var ge,be,we,ke;!function(e){e.RequestCredentialsFailed="RequestCredentialsFailed",e.Timeout="Timeout",e.Abort="Abort"}(ge||(ge={})),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"}(be||(be={})),function(e){e.AbortSessionFailed="AbortSessionFailed"}(we||(we={})),function(e){e.FailedToAbortSession="Failed to abort session"}(ke||(ke={}));const Ee=K({apiBaseUrl:L($(),P("Must not be empty"),x()),applicationId:L($(),P("Must not be empty"))});var Ie,Se;!function(e){e.UnexpectedResponse="UnexpectedResponse"}(Ie||(Ie={})),function(e){e.HttpError="HttpError",e.UnknownError="UnknownError"}(Se||(Se={}));const Ce=async(e,t)=>{try{const n=Object.assign(Object.assign({},null==t?void 0:t.headers),{"x-mattr-sdk-version":`verifier-sdk-web/${de}`}),r=await fetch(e,Object.assign(Object.assign({},t),{headers:n})),i=`HTTP error, status = ${r.status}`;if(r.status>=400&&r.status<500)try{const e=await r.json();if("string"==typeof(null==e?void 0:e.message))return u({type:Se.HttpError,message:e.message,status:r.status})}catch(e){return u({type:Se.HttpError,message:i,status:r.status})}return r.status>299||r.status<200?u({type:Se.HttpError,message:i,status:r.status}):a(r)}catch(e){return u({type:Se.UnknownError,message:"Unknown error",cause:e})}};let Te;var Ue;!function(e){e.SdkNotInitialized="SDK not initialized"}(Ue||(Ue={}));const Oe=e=>{Y(Ee,"Invalid initialize options")(e);const{apiBaseUrl:t}=e,n=t.trim();Te={apiBaseUrl:n,applicationId:e.applicationId}},Ae=()=>Te;let Re,Pe,xe,je;const Fe=e=>{const{sessionId:t,sessionKey:n,sessionTimeoutId:r}=e;Pe=t,xe=n,je=r;const i=new AbortController;return Re=i,i},De=()=>{null==Re||Re.abort(),je&&window.clearTimeout(je),Re=void 0,xe=void 0,Pe=void 0,je=void 0};var Be=$e,_e=$e,Ke=$e,Me=/(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,qe=/CrOS/,Ne=/android|ipad|playbook|silk/i;function $e(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 n=Me.test(t)&&!qe.test(t)||!!e.tablet&&Ne.test(t);return!n&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==t.indexOf("Macintosh")&&-1!==t.indexOf("Safari")&&(n=!0),n}Be.isMobile=_e,Be.default=Ke;const He=e=>1e3*Math.pow(2,e),ze=2,Ve=async(e,t)=>{const{retries:n=ze,retryDelay:r=He,attempt:i=0}=t;try{return await e()}catch(s){if(n>0){const s="function"==typeof r?r(i):r;return await new Promise((e=>setTimeout(e,s))),await Ve(e,Object.assign(Object.assign({},t),{retries:n-1,retryDelay:r,attempt:i+1}))}throw s}},Le=async(e,t)=>{const{retries:n=ze,retryDelay:r=He,attempt:i=0,retryHttpStatus:s}=t,o=await e();if(o.isErr()&&o.error.status===s&&n>0){const s="function"==typeof r?r(i):r;return await new Promise((e=>setTimeout(e,s))),await Le(e,Object.assign(Object.assign({},t),{retries:n-1,retryDelay:r,attempt:i+1}))}return o},Ge=()=>{const e=window.crypto.getRandomValues(new Uint8Array(32)),t=String.fromCharCode(...Array.from(e));return window.btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},Qe=async({challenge:e,responseCode:t,sessionId:n,apiBaseUrl:r})=>{const i={challenge:e,responseCode:t},s=await Le((async()=>await Ce(`${r}/v2/presentations/sessions/${n}/result`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)})),{retries:2,retryHttpStatus:404});if(s.isErr())return u(s.error);const o=await s.value.json();return Q(se)(o)?a(o):u({type:Ie.UnexpectedResponse,message:"Exchange session result return unsupported response",details:{data:o}})};var Je;let Ye;!function(e){e.message="message"}(Je||(Je={}));const We=()=>{Ye&&window.removeEventListener(Je.message,Ye,!1),Ye=void 0},Xe=e=>{const{container:t}=e;document.body.contains(t)&&document.body.removeChild(t),We()},Ze=async e=>{const{challenge:t,apiBaseUrl:n,sessionUrl:r,sessionId:i,sessionKey:s}=e,o=(e=>{const{sessionUrl:t}=e,n=document.createElement("div"),r=document.createElement("iframe");r.src=t,r.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 }",n.appendChild(i),n.appendChild(r),document.body.appendChild(n),n.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;"),n.setAttribute("class","mattr-verifier-modal-container"),n})({sessionUrl:r});return await new Promise((e=>{Fe({sessionId:i,sessionKey:s}).signal.addEventListener("abort",(()=>{Xe({container:o}),e(u({type:ge.Abort,message:be.Abort}))})),We(),Ye=(e=>async t=>{const{onComplete:n,onFailure:r,container:i,sessionId:s,apiBaseUrl:o,challenge:a}=e;if(t.origin===o){if(t.data.type===fe.PresentationCompleted&&t.data.responseCode&&t.data.sessionId){const e=t.data.responseCode,u=await Qe({challenge:a,responseCode:e,sessionId:s,apiBaseUrl:o});return u.isErr()?(r({type:ge.RequestCredentialsFailed,message:be.FailedToGetSessionResult}),void Xe({container:i})):(n({result:"challenge"in u.value?u.value:void 0,sessionId:u.value.sessionId,sessionCompletedInRedirect:!1}),void Xe({container:i}))}return t.data.type===fe.PresentationTimeout?(r({type:ge.Timeout,message:be.Timeout}),void Xe({container:i})):t.data.type===fe.PresentationAbort?(r({type:ge.Abort,message:be.Abort}),void Xe({container:i})):void 0}})({container:o,sessionId:i,apiBaseUrl:n,challenge:t,onComplete:t=>e(a(t)),onFailure:t=>e(u(t))}),window.addEventListener(Je.message,Ye,!1)}))},et=async()=>{const t=Ae();if(!t)throw new e(Ue.SdkNotInitialized);const{apiBaseUrl:n}=t,r=(()=>{if(Pe)return{sessionId:Pe,sessionKey:xe,sessionTimeoutId:je}})();if(!r||!r.sessionKey)return a(void 0);const{sessionId:i,sessionKey:s}=r;De();const o=await(async({apiBaseUrl:e,sessionId:t,sessionKey:n})=>{const r=await Ce(`${e}/v2/presentations/sessions/${t}/abort`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`}});return r.isErr()?u(r.error):a(void 0)})({apiBaseUrl:n,sessionId:i,sessionKey:s});return o.isErr()?u({type:we.AbortSessionFailed,message:ke.FailedToAbortSession,cause:o.error}):a(void 0)},tt=async(e,t)=>{try{const n=await navigator.credentials.get(Object.assign(Object.assign({},e),{signal:t.signal}));return a(n)}catch(e){return u({type:ge.RequestCredentialsFailed,message:be.DcApiError,cause:e})}},nt=e=>{if(!e)return u({type:ge.RequestCredentialsFailed,message:be.DcApiResponseParseError,details:{response:e}});if("object"==typeof e)return a(e);if("string"==typeof e)try{const t=JSON.parse(e);return a(t)}catch(t){return u({type:ge.RequestCredentialsFailed,message:be.DcApiResponseParseError,details:{response:e}})}return u({type:ge.RequestCredentialsFailed,message:be.DcApiResponseParseError,details:{response:e}})},rt=async e=>{const{apiBaseUrl:t,sessionId:n,sessionKey:r,challenge:i,protocol:s,data:o}=e,l={protocol:s,data:o,challenge:i},c=await Ce(`${t}/v2/presentations/sessions/${n}/dc-api/response`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r}`},body:JSON.stringify(l)});if(c.isErr())return u(c.error);const p=await c.value.json();return Q(se)(p)?a(p):u({type:Ie.UnexpectedResponse,message:"Verify credential returned unsupported response",details:{response:p}})},it=()=>{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 st;!function(e){e.FailedToStoreChallenge="Failed to store challenge",e.FailedToCreateSession="Failed to create session"}(st||(st={}));const ot=async e=>{const{challenge:t,apiBaseUrl:n,applicationId:r,sessionUrl:i,sessionKey:s,sessionId:o}=e,l=Fe({sessionId:o,sessionKey:s});var c;window.localStorage.setItem(pe.sessionId,o),window.localStorage.setItem(pe.challenge,t),window.location.assign(i),await(c=3e3,new Promise((e=>setTimeout(e,c))));const p=await Ve((async()=>{const e=await(async({apiBaseUrl:e,sessionId:t,sessionKey:n})=>{const r=await Ce(`${e}/v2/presentations/sessions/${t}/status`,{method:"GET",headers:{Authorization:`Bearer ${n}`}});if(r.isErr())return u(r.error);const i=await r.value.json();return Q(ce)(i)?a(i):u({type:Ie.UnexpectedResponse,message:"Get session status return unsupported response"})})({apiBaseUrl:n,applicationId:r,sessionId:o,sessionKey:s});if(l.signal.aborted)return u({type:ge.Abort,message:be.Abort});if(e.isErr()){if(404===e.error.status)return u({type:ge.Timeout,message:be.Timeout});throw Error("Unexpected status response. Retry")}if(e.value.status!==ne.ResultReady)throw Error("Result is not ready. Retry");return a(void 0)}),{retries:1e3,retryDelay:3e3});return p.isErr()?u(p.error):(window.close(),a({sessionId:o,sessionCompletedInRedirect:!0}))},at=async t=>{var n;const r=Ae();if(!r)throw new e(Ue.SdkNotInitialized);Y(me,"Invalid request credential options")(t);const{apiBaseUrl:i,applicationId:s}=r,{challenge:o=Ge(),credentialQuery:l,openid4vpConfiguration:c}=t,p=it(),d=ut(c),f=await(async({credentialQuery:e,challenge:t,redirectUri:n,apiBaseUrl:r,walletProviderId:i,dcApiSupported:s,applicationId:o})=>{const l={credentialQuery:e,challenge:t,applicationId:o,redirectUri:n,walletProviderId:i,dcApiSupported:s},c=await Ce(`${r}/v2/presentations/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)});if(c.isErr())return u(c.error);const p=await c.value.json();return Q(le)(p)?a(p):u({type:Ie.UnexpectedResponse,message:"Create session returned unsupported response"})})({credentialQuery:l,challenge:o,redirectUri:d,walletProviderId:null!==(n=null==c?void 0:c.walletProviderId)&&void 0!==n?n:void 0,apiBaseUrl:i,applicationId:s,dcApiSupported:p});if(f.isErr())return u({type:ge.RequestCredentialsFailed,message:be.FailedToCreateSession,cause:f.error});const y=f.value,{sessionKey:v,sessionId:h}=y;if(y.type===ae.DigitalCredentialsApi){const{request:e,sessionTtl:t}=y;return await(async e=>{const{apiBaseUrl:t,sessionId:n,sessionKey:r,challenge:i,request:s,sessionTtl:o}=e,l=window.setTimeout((()=>De()),1e3*o),c=Fe({sessionId:n,sessionKey:r,sessionTimeoutId:l}),p=await tt(s,c);if(p.isErr())return await et(),u(p.error);const d=p.value,f=nt(d);if(f.isErr())return await et(),u(f.error);const y=f.value,v=await rt({apiBaseUrl:t,sessionId:n,sessionKey:r,challenge:i,protocol:y.protocol,data:y.data});if(v.isErr())return u({type:ge.RequestCredentialsFailed,message:be.FailedToVerifyCredentialResponse,cause:v.error});const h=v.value;return a({result:"challenge"in h?h:void 0,sessionId:n})})({apiBaseUrl:i,request:e,sessionId:h,sessionKey:v,challenge:o,sessionTtl:t})}if(!c)return u({type:ge.RequestCredentialsFailed,message:be.MissingOpenId4vpConfig});const{sessionUrl:m}=y;return d?await ot({challenge:o,apiBaseUrl:i,applicationId:s,sessionUrl:m,sessionKey:v,sessionId:h}):await Ze({challenge:o,apiBaseUrl:i,sessionUrl:m,sessionKey:v,sessionId:h})},ut=e=>{if(!e)return;let t;var n;return e&&e.mode?t=e.mode:(n=navigator.userAgent,t=_e({ua:n,tablet:!1})?oe.SameDevice:oe.CrossDevice),t===oe.SameDevice&&!Q(ve)(e)&&e.redirectUri?e.redirectUri.trim():void 0};var lt,ct;!function(e){e.HandleRedirectCallbackFailed="HandleRedirectCallbackFailed"}(lt||(lt={})),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"}(ct||(ct={}));const pt=async()=>{const t=Ae();if(!t)throw new e(Ue.SdkNotInitialized);const{apiBaseUrl:n}=t,r=(i=window.location.hash,s="response_code",new URLSearchParams(i.split("#")[1]).get(s));var i,s;if(!r)return u({type:lt.HandleRedirectCallbackFailed,message:ct.FailedToFindResponseCode});const o=window.localStorage.getItem(pe.sessionId),l=window.localStorage.getItem(pe.challenge);if(!o||!l)return u({type:lt.HandleRedirectCallbackFailed,message:ct.FailedToFindActiveSession});const c=await Qe({challenge:l,responseCode:r,sessionId:o,apiBaseUrl:n});return c.isErr()?u({type:lt.HandleRedirectCallbackFailed,message:ct.FailedToGetSessionResult,cause:c.error}):a({result:"challenge"in c.value?c.value:void 0,sessionId:c.value.sessionId})},dt={generateChallenge:Ge,getVersion:()=>de,unwrap:(t,n)=>{if(t.isOk())return t.value;throw new e(null!=n?n:"Error unwrapping result",t.error)}};export{we as AbortSessionErrorType,X as ClaimType,Z as CredentialBrandingImageFormat,lt as HandleRedirectCallbackErrorType,ee as MobileCredentialResponseErrorCode,W as MobileCredentialVerificationReasonType,oe as Mode,te as OpenidPresentationCredentialProfileSupported,ge as RequestCredentialsErrorType,et as abortCredentialRequest,pt as handleRedirectCallback,Oe as initialize,it as isDigitalCredentialsApiSupported,at as requestCredentials,dt as utils};
36
+ function t(e,t,n,r){return new(n||(n=Promise))((function(i,s){function o(e){try{u(r.next(e))}catch(e){s(e)}}function a(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,a)}u((r=r.apply(e,t||[])).next())}))}function n(e,t){var n,r,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(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=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++,r=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],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function r(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,s=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(r=s.next()).done;)o.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=s.return)&&n.call(s)}finally{if(i)throw i.error}}return o}var i,s={withStackTrace:!1},o=function(e,t,n){return void 0===n&&(n=s),{data:t.isOk()?{type:"Ok",value:t.value}:{type:"Err",value:t.error},message:e,stack:n.withStackTrace?(new Error).stack:void 0}};!function(e){e.fromThrowable=function(e,t){return function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];try{var s=e.apply(void 0,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(r(arguments[t]));return e}(n));return a(s)}catch(e){return u(t?t(e):e)}}}}(i||(i={}));var a=function(e){return new l(e)},u=function(e){return new c(e)},l=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 a(e(this.value))},e.prototype.mapErr=function(e){return a(this.value)},e.prototype.andThen=function(e){return e(this.value)},e.prototype.orElse=function(e){return a(this.value)},e.prototype.asyncAndThen=function(e){return e(this.value)},e.prototype.asyncMap=function(e){return v.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 o("Called `_unsafeUnwrapErr` on an Ok",this,e)},e}(),c=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 u(this.error)},e.prototype.mapErr=function(e){return u(e(this.error))},e.prototype.andThen=function(e){return u(this.error)},e.prototype.orElse=function(e){return e(this.error)},e.prototype.asyncAndThen=function(e){return h(this.error)},e.prototype.asyncMap=function(e){return h(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 o("Called `_unsafeUnwrap` on an Err",this,e)},e.prototype._unsafeUnwrapErr=function(e){return this.error},e}();i.fromThrowable;var p,d,f,y,v=function(){function e(e){this._promise=e}return e.fromSafePromise=function(t){return new e(t.then((function(e){return new l(e)})))},e.fromPromise=function(t,n){return new e(t.then((function(e){return new l(e)})).catch((function(e){return new c(n(e))})))},e.prototype.map=function(r){var i=this;return new e(this._promise.then((function(e){return t(i,void 0,void 0,(function(){var t;return n(this,(function(n){switch(n.label){case 0:return e.isErr()?[2,new c(e.error)]:(t=l.bind,[4,r(e.value)]);case 1:return[2,new(t.apply(l,[void 0,n.sent()]))]}}))}))})))},e.prototype.mapErr=function(r){var i=this;return new e(this._promise.then((function(e){return t(i,void 0,void 0,(function(){var t;return n(this,(function(n){switch(n.label){case 0:return e.isOk()?[2,new l(e.value)]:(t=c.bind,[4,r(e.error)]);case 1:return[2,new(t.apply(c,[void 0,n.sent()]))]}}))}))})))},e.prototype.andThen=function(t){return new e(this._promise.then((function(n){if(n.isErr())return new c(n.error);var r=t(n.value);return r instanceof e?r._promise:r})))},e.prototype.orElse=function(r){var i=this;return new e(this._promise.then((function(e){return t(i,void 0,void 0,(function(){return n(this,(function(t){return e.isErr()?[2,r(e.error)]:[2,new l(e.value)]}))}))})))},e.prototype.match=function(e,t){return this._promise.then((function(n){return n.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}(),h=function(e){return new v(Promise.resolve(new c(e)))};function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function g(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=S(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},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(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){a=!0,s=e},f:function(){try{o||null==n.return||n.return()}finally{if(a)throw s}}}}function b(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;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:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function w(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function k(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?w(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):w(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function E(e){return function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||S(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 I(e){return I="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},I(e)}function S(e,t){if(e){if("string"==typeof e)return m(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m(e,t):void 0}}function C(e){var t,n,r,i,s,o;return{lang:null!==(t=null==e?void 0:e.lang)&&void 0!==t?t:null===(n=p)||void 0===n?void 0:n.lang,message:null==e?void 0:e.message,abortEarly:null!==(r=null==e?void 0:e.abortEarly)&&void 0!==r?r: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}}function T(e){var t,n,r=I(e);return"string"===r?'"'.concat(e,'"'):"number"===r||"bigint"===r||"boolean"===r?"".concat(e):"object"===r||"function"===r?null!==(t=e&&(null===(n=Object.getPrototypeOf(e))||void 0===n||null===(n=n.constructor)||void 0===n?void 0:n.name))&&void 0!==t?t:"null":r}function U(e,t,n,r,i){var s,o,a,u,l,c,p,v,h,m,g,b=i&&"input"in i?i.input:n.value,w=null!==(s=null!==(o=null==i?void 0:i.expected)&&void 0!==o?o:e.expects)&&void 0!==s?s:null,k=null!==(a=null==i?void 0:i.received)&&void 0!==a?a:T(b),E={kind:e.kind,type:e.type,input:b,expected:w,received:k,message:"Invalid ".concat(t,": ").concat(w?"Expected ".concat(w," but r"):"R","eceived ").concat(k),requirement:e.requirement,path:null==i?void 0:i.path,issues:null==i?void 0:i.issues,lang:r.lang,abortEarly:r.abortEarly,abortPipeEarly:r.abortPipeEarly},I="schema"===e.kind,S=null!==(u=null!==(l=null!==(c=null!==(p=null!==(v=null==i?void 0:i.message)&&void 0!==v?v:e.message)&&void 0!==p?p:(h=e.reference,m=E.lang,null===(g=y)||void 0===g||null===(g=g.get(h))||void 0===g?void 0:g.get(m)))&&void 0!==c?c:I?function(e){var t;return null===(t=f)||void 0===t?void 0:t.get(e)}(E.lang):null)&&void 0!==l?l:r.message)&&void 0!==u?u:function(e){var t;return null===(t=d)||void 0===t?void 0:t.get(e)}(E.lang);void 0!==S&&(E.message="function"==typeof S?S(E):S),I&&(n.typed=!1),n.issues?n.issues.push(E):n.issues=[E]}function O(e){return{version:1,vendor:"valibot",validate:function(t){return e["~run"]({value:t},C())}}}function A(e,t){return Object.hasOwn(e,t)&&"__proto__"!==t&&"prototype"!==t&&"constructor"!==t}function R(e,t){var n,r=E(new Set(e));return r.length>1?"(".concat(r.join(" ".concat(t," ")),")"):null!==(n=r[0])&&void 0!==n?n:"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&&U(this,"length",e,t,{received:"0"}),e}}}function x(e){return{kind:"validation",type:"url",reference:x,async:!1,expects:null,requirement:function(e){try{return new URL(e),!0}catch(e){return!1}},message:e,"~run":function(e,t){return e.typed&&!this.requirement(e.value)&&U(this,"URL",e,t),e}}}function j(e,t,n){return"function"==typeof e.fallback?e.fallback(t,n):e.fallback}function F(e,t,n){return"function"==typeof e.default?e.default(t,n):e.default}function D(e,t){return{kind:"schema",type:"array",reference:D,expects:"Array",async:!1,item:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(Array.isArray(n)){e.typed=!0,e.value=[];for(var r=0;r<n.length;r++){var i=n[r],s=this.item["~run"]({value:i},t);if(s.issues){var o,a={type:"array",origin:"value",input:n,key:r,value:i},u=g(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 U(this,"type",e,t);return e}}}function B(e){return{kind:"schema",type:"boolean",reference:B,expects:"boolean",async:!1,message:e,get"~standard"(){return O(this)},"~run":function(e,t){return"boolean"==typeof e.value?e.typed=!0:U(this,"type",e,t),e}}}function _(e,t){return{kind:"schema",type:"literal",reference:_,expects:T(e),async:!1,literal:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){return e.value===this.literal?e.typed=!0:U(this,"type",e,t),e}}}function K(e,t){return{kind:"schema",type:"object",reference:K,expects:"Object",async:!1,entries:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(n&&"object"===I(n))for(var r in e.typed=!0,e.value={},this.entries){var i=this.entries[r];if(r in n||("exact_optional"===i.type||"optional"===i.type||"nullish"===i.type)&&void 0!==i.default){var s=r in n?n[r]:F(i),o=i["~run"]({value:s},t);if(o.issues){var a,u={type:"object",origin:"value",input:n,key:r,value:s},l=g(o.issues);try{for(l.s();!(a=l.n()).done;){var c,p=a.value;p.path?p.path.unshift(u):p.path=[u],null===(c=e.issues)||void 0===c||c.push(p)}}catch(e){l.e(e)}finally{l.f()}if(e.issues||(e.issues=o.issues),t.abortEarly){e.typed=!1;break}}o.typed||(e.typed=!1),e.value[r]=o.value}else if(void 0!==i.fallback)e.value[r]=j(i);else if("exact_optional"!==i.type&&"optional"!==i.type&&"nullish"!==i.type&&(U(this,"key",e,t,{input:void 0,expected:'"'.concat(r,'"'),path:[{type:"object",origin:"key",input:n,key:r,value:n[r]}]}),t.abortEarly))break}else U(this,"type",e,t);return e}}}function M(e,t){return{kind:"schema",type:"optional",reference:M,expects:"(".concat(e.expects," | undefined)"),async:!1,wrapped:e,default:t,get"~standard"(){return O(this)},"~run":function(e,t){return void 0===e.value&&(void 0!==this.default&&(e.value=F(this,e,t)),void 0===e.value)?(e.typed=!0,e):this.wrapped["~run"](e,t)}}}function q(e,t){return{kind:"schema",type:"picklist",reference:q,expects:R(e.map(T),"|"),async:!1,options:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){return this.options.includes(e.value)?e.typed=!0:U(this,"type",e,t),e}}}function N(e,t,n){return{kind:"schema",type:"record",reference:N,expects:"Object",async:!1,key:e,value:t,message:n,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(n&&"object"===I(n)){for(var r in e.typed=!0,e.value={},n)if(A(n,r)){var i=n[r],s=this.key["~run"]({value:r},t);if(s.issues){var o,a={type:"object",origin:"key",input:n,key:r,value:i},u=g(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 p=this.value["~run"]({value:i},t);if(p.issues){var d,f={type:"object",origin:"value",input:n,key:r,value:i},y=g(p.issues);try{for(y.s();!(d=y.n()).done;){var v,h=d.value;h.path?h.path.unshift(f):h.path=[f],null===(v=e.issues)||void 0===v||v.push(h)}}catch(e){y.e(e)}finally{y.f()}if(e.issues||(e.issues=p.issues),t.abortEarly){e.typed=!1;break}}s.typed&&p.typed||(e.typed=!1),s.typed&&(e.value[s.value]=p.value)}}else U(this,"type",e,t);return e}}}function $(e){return{kind:"schema",type:"string",reference:$,expects:"string",async:!1,message:e,get"~standard"(){return O(this)},"~run":function(e,t){return"string"==typeof e.value?e.typed=!0:U(this,"type",e,t),e}}}function H(e){var t;if(e){var n,r=g(e);try{for(r.s();!(n=r.n()).done;){var i,s=n.value;if(t)(i=t).push.apply(i,E(s.issues));else t=s.issues}}catch(e){r.e(e)}finally{r.f()}}return t}function z(e,t){return{kind:"schema",type:"union",reference:z,expects:R(e.map((function(e){return e.expects})),"|"),async:!1,options:e,message:t,get"~standard"(){return O(this)},"~run":function(e,t){var n,r,i,s,o,a=g(this.options);try{for(a.s();!(o=a.n()).done;){var u=o.value["~run"]({value:e.value},t);if(u.typed){if(!u.issues){r=u;break}i?i.push(u):i=[u]}else s?s.push(u):s=[u]}}catch(e){a.e(e)}finally{a.f()}if(r)return r;if(i){if(1===i.length)return i[0];U(this,"type",e,t,{issues:H(i)}),e.typed=!0}else{if(1===(null===(n=s)||void 0===n?void 0:n.length))return s[0];U(this,"type",e,t,{issues:H(s)})}return e}}}function V(){return{kind:"schema",type:"unknown",reference:V,expects:"unknown",async:!1,get"~standard"(){return O(this)},"~run":function(e){return e.typed=!0,e}}}function L(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return k(k({},t[0]),{},{pipe:t,get"~standard"(){return O(this)},"~run":function(e,n){for(var r=0,i=t;r<i.length;r++){var s=i[r];if("metadata"!==s.kind){if(e.issues&&("schema"===s.kind||"transformation"===s.kind)){e.typed=!1;break}e.issues&&(n.abortEarly||n.abortPipeEarly)||(e=s["~run"](e,n))}}return e}})}function G(e,t,n){var r=e["~run"]({value:t},C(n));return{typed:r.typed,success:!r.issues,output:r.value,issues:r.issues}}v.fromPromise,v.fromSafePromise;const Q=e=>t=>G(e,t).success,J=(e,t)=>{const n=G(t,e);return n.success?a(n.output):u((e=>{const t=({message:e,path:t})=>({message:e,path:null==t?void 0:t.map((e=>e.key))}),n=new Map;return e.flatMap((e=>"union"===e.type&&e.issues?e.issues.map(t):[t(e)])).forEach((e=>{const t=`${e.message}-${JSON.stringify(e.path)}`;n.has(t)||n.set(t,e)})),Array.from(n.values())})(n.issues))},Y=(t,n)=>r=>{const i=J(r,t);if(i.isErr())throw new e(n,{data:r,errors:i.error})};var W,X,Z,ee,te,ne;!function(e){e.TrustedIssuerCertificateExpired="TrustedIssuerCertificateExpired",e.TrustedIssuerCertificateNotYetValid="TrustedIssuerCertificateNotYetValid",e.IssuerNotTrusted="IssuerNotTrusted",e.MobileCredentialInvalid="MobileCredentialInvalid",e.MobileCredentialExpired="MobileCredentialExpired",e.MobileCredentialNotYetValid="MobileCredentialNotYetValid",e.InvalidSignerCertificate="InvalidSignerCertificate",e.DeviceKeyInvalid="DeviceKeyInvalid",e.UnsupportedCurve="UnsupportedCurve",e.StatusRevoked="StatusRevoked",e.StatusSuspended="StatusSuspended",e.StatusUnknown="StatusUnknown"}(W||(W={})),function(e){e.Boolean="boolean",e.Number="number",e.String="string",e.Binary="binary",e.Date="date",e.DateTime="dateTime",e.Array="array",e.Object="object"}(X||(X={})),function(e){e.svg="svg",e.png="png"}(Z||(Z={})),function(e){e.NotReturned="notReturned"}(ee||(ee={})),function(e){e.MOBILE="mobile"}(te||(te={})),function(e){e.AwaitingRequestRetrieval="AwaitingRequestRetrieval",e.AwaitingResponse="AwaitingResponse",e.ResponseSubmitted="ResponseSubmitted",e.ResultReady="ResultReady"}(ne||(ne={}));const re=K({profile:q([te.MOBILE]),docType:$(),nameSpaces:N($(),N($(),function e(t,n){return{kind:"schema",type:"strict_object",reference:e,expects:"Object",async:!1,entries:t,message:n,get"~standard"(){return O(this)},"~run":function(e,t){var n=e.value;if(n&&"object"===I(n)){for(var r in e.typed=!0,e.value={},this.entries){var i=this.entries[r];if(r in n||("exact_optional"===i.type||"optional"===i.type||"nullish"===i.type)&&void 0!==i.default){var s=r in n?n[r]:F(i),o=i["~run"]({value:s},t);if(o.issues){var a,u={type:"object",origin:"value",input:n,key:r,value:s},l=g(o.issues);try{for(l.s();!(a=l.n()).done;){var c,p=a.value;p.path?p.path.unshift(u):p.path=[u],null===(c=e.issues)||void 0===c||c.push(p)}}catch(e){l.e(e)}finally{l.f()}if(e.issues||(e.issues=o.issues),t.abortEarly){e.typed=!1;break}}o.typed||(e.typed=!1),e.value[r]=o.value}else if(void 0!==i.fallback)e.value[r]=j(i);else if("exact_optional"!==i.type&&"optional"!==i.type&&"nullish"!==i.type&&(U(this,"key",e,t,{input:void 0,expected:'"'.concat(r,'"'),path:[{type:"object",origin:"key",input:n,key:r,value:n[r]}]}),t.abortEarly))break}if(!e.issues||!t.abortEarly)for(var d in n)if(!(d in this.entries)){U(this,"key",e,t,{input:d,expected:"never",path:[{type:"object",origin:"key",input:n,key:d,value:n[d]}]});break}}else U(this,"type",e,t);return e}}}({intentToRetain:M(B())})))});var ie;!function(e){e.SessionAborted="SessionAborted",e.VerificationError="VerificationError",e.ResponseError="ResponseError",e.WalletUnavailable="WalletUnavailable",e.Unknown="Unknown"}(ie||(ie={}));const se=K({sessionId:$(),challenge:M($()),credentialQuery:M(V()),credentials:M(V()),credentialErrors:M(V()),error:M(V())});var oe,ae;!function(e){e.SameDevice="sameDevice",e.CrossDevice="crossDevice"}(oe||(oe={})),function(e){e.DigitalCredentialsApi="digital-credentials-api",e.Openid4vp="openid4vp"}(ae||(ae={})),K({credentialQuery:D(re),challenge:$(),redirectUri:M($()),walletProviderId:M($()),dcApiSupported:M(B())});const ue=K({type:_(ae.DigitalCredentialsApi),sessionId:$(),sessionKey:$(),sessionTtl:function e(t){return{kind:"schema",type:"number",reference:e,expects:"number",async:!1,message:t,get"~standard"(){return O(this)},"~run":function(e,t){return"number"!=typeof e.value||isNaN(e.value)?U(this,"type",e,t):e.typed=!0,e}}}(),request:N($(),function e(){return{kind:"schema",type:"any",reference:e,expects:"any",async:!1,get"~standard"(){return O(this)},"~run":function(e){return e.typed=!0,e}}}())}),le=z([ue,K({type:M(_(ae.Openid4vp)),sessionId:$(),sessionKey:$(),sessionUrl:$()})]),ce=z([K({status:q([ne.ResultReady]),responseCode:M($())}),K({status:$()})]);var pe;!function(e){e.challenge="mattr_chg",e.sessionId="mattr_sid"}(pe||(pe={}));const de="2.0.2";var fe;!function(e){e.PresentationCompleted="PresentationCompleted",e.PresentationTimeout="PresentationTimeout",e.PresentationAbort="PresentationAbort"}(fe||(fe={}));const ye=K({walletProviderId:M($()),mode:_(oe.SameDevice),redirectUri:L($(),P("Must not be empty"),x())}),ve=K({walletProviderId:M($()),mode:_(oe.CrossDevice)}),he=K({walletProviderId:M($()),redirectUri:L($(),P("Must not be empty"),x()),mode:M(q([oe.CrossDevice,oe.SameDevice]))}),me=K({credentialQuery:L(D(re),P()),challenge:M($()),openid4vpConfiguration:M(z([ye,ve,he]))});var ge,be,we,ke;!function(e){e.RequestCredentialsFailed="RequestCredentialsFailed",e.Timeout="Timeout",e.Abort="Abort"}(ge||(ge={})),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"}(be||(be={})),function(e){e.AbortSessionFailed="AbortSessionFailed"}(we||(we={})),function(e){e.FailedToAbortSession="Failed to abort session"}(ke||(ke={}));const Ee=K({apiBaseUrl:L($(),P("Must not be empty"),x()),applicationId:L($(),P("Must not be empty"))});var Ie,Se;!function(e){e.UnexpectedResponse="UnexpectedResponse"}(Ie||(Ie={})),function(e){e.HttpError="HttpError",e.UnknownError="UnknownError"}(Se||(Se={}));const Ce=async(e,t)=>{try{const n=Object.assign(Object.assign({},null==t?void 0:t.headers),{"x-mattr-sdk-version":`verifier-sdk-web/${de}`}),r=await fetch(e,Object.assign(Object.assign({},t),{headers:n})),i=`HTTP error, status = ${r.status}`;if(r.status>=400&&r.status<500)try{const e=await r.json();if("string"==typeof(null==e?void 0:e.message))return u({type:Se.HttpError,message:e.message,status:r.status})}catch(e){return u({type:Se.HttpError,message:i,status:r.status})}return r.status>299||r.status<200?u({type:Se.HttpError,message:i,status:r.status}):a(r)}catch(e){return u({type:Se.UnknownError,message:"Unknown error",cause:e})}};let Te;var Ue;!function(e){e.SdkNotInitialized="SDK not initialized"}(Ue||(Ue={}));const Oe=e=>{Y(Ee,"Invalid initialize options")(e);const{apiBaseUrl:t}=e,n=t.trim();Te={apiBaseUrl:n,applicationId:e.applicationId}},Ae=()=>Te;let Re,Pe,xe,je;const Fe=e=>{const{sessionId:t,sessionKey:n,sessionTimeoutId:r}=e;Pe=t,xe=n,je=r;const i=new AbortController;return Re=i,i},De=()=>{null==Re||Re.abort(),je&&window.clearTimeout(je),Re=void 0,xe=void 0,Pe=void 0,je=void 0};var Be=$e,_e=$e,Ke=$e,Me=/(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,qe=/CrOS/,Ne=/android|ipad|playbook|silk/i;function $e(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 n=Me.test(t)&&!qe.test(t)||!!e.tablet&&Ne.test(t);return!n&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==t.indexOf("Macintosh")&&-1!==t.indexOf("Safari")&&(n=!0),n}Be.isMobile=_e,Be.default=Ke;const He=e=>1e3*Math.pow(2,e),ze=2,Ve=async(e,t)=>{const{retries:n=ze,retryDelay:r=He,attempt:i=0}=t;try{return await e()}catch(s){if(n>0){const s="function"==typeof r?r(i):r;return await new Promise((e=>setTimeout(e,s))),await Ve(e,Object.assign(Object.assign({},t),{retries:n-1,retryDelay:r,attempt:i+1}))}throw s}},Le=async(e,t)=>{const{retries:n=ze,retryDelay:r=He,attempt:i=0,retryHttpStatus:s}=t,o=await e();if(o.isErr()&&o.error.status===s&&n>0){const s="function"==typeof r?r(i):r;return await new Promise((e=>setTimeout(e,s))),await Le(e,Object.assign(Object.assign({},t),{retries:n-1,retryDelay:r,attempt:i+1}))}return o},Ge=()=>{const e=window.crypto.getRandomValues(new Uint8Array(32)),t=String.fromCharCode(...Array.from(e));return window.btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},Qe=async({challenge:e,responseCode:t,sessionId:n,apiBaseUrl:r})=>{const i={challenge:e,responseCode:t},s=await Le((async()=>await Ce(`${r}/v2/presentations/sessions/${n}/result`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)})),{retries:2,retryHttpStatus:404});if(s.isErr())return u(s.error);const o=await s.value.json();return Q(se)(o)?a(o):u({type:Ie.UnexpectedResponse,message:"Exchange session result return unsupported response",details:{data:o}})};var Je;let Ye;!function(e){e.message="message"}(Je||(Je={}));const We=()=>{Ye&&window.removeEventListener(Je.message,Ye,!1),Ye=void 0},Xe=e=>{const{container:t}=e;document.body.contains(t)&&document.body.removeChild(t),We()},Ze=async e=>{const{challenge:t,apiBaseUrl:n,sessionUrl:r,sessionId:i,sessionKey:s}=e,o=(e=>{const{sessionUrl:t}=e,n=document.createElement("div"),r=document.createElement("iframe");r.src=t,r.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 }",n.appendChild(i),n.appendChild(r),document.body.appendChild(n),n.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;"),n.setAttribute("class","mattr-verifier-modal-container"),n})({sessionUrl:r});return await new Promise((e=>{Fe({sessionId:i,sessionKey:s}).signal.addEventListener("abort",(()=>{Xe({container:o}),e(u({type:ge.Abort,message:be.Abort}))})),We(),Ye=(e=>async t=>{const{onComplete:n,onFailure:r,container:i,sessionId:s,apiBaseUrl:o,challenge:a}=e;if(t.origin===o){if(t.data.type===fe.PresentationCompleted&&t.data.responseCode&&t.data.sessionId){const e=t.data.responseCode,u=await Qe({challenge:a,responseCode:e,sessionId:s,apiBaseUrl:o});return u.isErr()?(r({type:ge.RequestCredentialsFailed,message:be.FailedToGetSessionResult}),void Xe({container:i})):(n({result:"challenge"in u.value?u.value:void 0,sessionId:u.value.sessionId,sessionCompletedInRedirect:!1}),void Xe({container:i}))}return t.data.type===fe.PresentationTimeout?(r({type:ge.Timeout,message:be.Timeout}),void Xe({container:i})):t.data.type===fe.PresentationAbort?(r({type:ge.Abort,message:be.Abort}),void Xe({container:i})):void 0}})({container:o,sessionId:i,apiBaseUrl:n,challenge:t,onComplete:t=>e(a(t)),onFailure:t=>e(u(t))}),window.addEventListener(Je.message,Ye,!1)}))},et=async()=>{const t=Ae();if(!t)throw new e(Ue.SdkNotInitialized);const{apiBaseUrl:n}=t,r=(()=>{if(Pe)return{sessionId:Pe,sessionKey:xe,sessionTimeoutId:je}})();if(!r||!r.sessionKey)return a(void 0);const{sessionId:i,sessionKey:s}=r;De();const o=await(async({apiBaseUrl:e,sessionId:t,sessionKey:n})=>{const r=await Ce(`${e}/v2/presentations/sessions/${t}/abort`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`}});return r.isErr()?u(r.error):a(void 0)})({apiBaseUrl:n,sessionId:i,sessionKey:s});return o.isErr()?u({type:we.AbortSessionFailed,message:ke.FailedToAbortSession,cause:o.error}):a(void 0)},tt=async(e,t)=>{try{const n=await navigator.credentials.get(Object.assign(Object.assign({},e),{signal:t.signal}));return a(n)}catch(e){return u({type:ge.RequestCredentialsFailed,message:be.DcApiError,cause:e})}},nt=e=>{if(!e)return u({type:ge.RequestCredentialsFailed,message:be.DcApiResponseParseError,details:{response:e}});if("object"==typeof e)return a(e);if("string"==typeof e)try{const t=JSON.parse(e);return a(t)}catch(t){return u({type:ge.RequestCredentialsFailed,message:be.DcApiResponseParseError,details:{response:e}})}return u({type:ge.RequestCredentialsFailed,message:be.DcApiResponseParseError,details:{response:e}})},rt=async e=>{const{apiBaseUrl:t,sessionId:n,sessionKey:r,challenge:i,protocol:s,data:o}=e,l={protocol:s,data:o,challenge:i},c=await Ce(`${t}/v2/presentations/sessions/${n}/dc-api/response`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r}`},body:JSON.stringify(l)});if(c.isErr())return u(c.error);const p=await c.value.json();return Q(se)(p)?a(p):u({type:Ie.UnexpectedResponse,message:"Verify credential returned unsupported response",details:{response:p}})},it=()=>{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 st;!function(e){e.FailedToStoreChallenge="Failed to store challenge",e.FailedToCreateSession="Failed to create session"}(st||(st={}));const ot=async e=>{const{challenge:t,apiBaseUrl:n,applicationId:r,sessionUrl:i,sessionKey:s,sessionId:o}=e,l=Fe({sessionId:o,sessionKey:s});var c;window.localStorage.setItem(pe.sessionId,o),window.localStorage.setItem(pe.challenge,t),window.location.assign(i),await(c=3e3,new Promise((e=>setTimeout(e,c))));const p=await Ve((async()=>{const e=await(async({apiBaseUrl:e,sessionId:t,sessionKey:n})=>{const r=await Ce(`${e}/v2/presentations/sessions/${t}/status`,{method:"GET",headers:{Authorization:`Bearer ${n}`}});if(r.isErr())return u(r.error);const i=await r.value.json();return Q(ce)(i)?a(i):u({type:Ie.UnexpectedResponse,message:"Get session status return unsupported response"})})({apiBaseUrl:n,applicationId:r,sessionId:o,sessionKey:s});if(l.signal.aborted)return u({type:ge.Abort,message:be.Abort});if(e.isErr()){if(404===e.error.status)return u({type:ge.Timeout,message:be.Timeout});throw Error("Unexpected status response. Retry")}if(e.value.status!==ne.ResultReady)throw Error("Result is not ready. Retry");return a(void 0)}),{retries:1e3,retryDelay:3e3});return p.isErr()?u(p.error):(window.close(),a({sessionId:o,sessionCompletedInRedirect:!0}))},at=async t=>{var n;const r=Ae();if(!r)throw new e(Ue.SdkNotInitialized);Y(me,"Invalid request credential options")(t);const{apiBaseUrl:i,applicationId:s}=r,{challenge:o=Ge(),credentialQuery:l,openid4vpConfiguration:c}=t,p=it(),d=ut(c),f=await(async({credentialQuery:e,challenge:t,redirectUri:n,apiBaseUrl:r,walletProviderId:i,dcApiSupported:s,applicationId:o})=>{const l={credentialQuery:e,challenge:t,applicationId:o,redirectUri:n,walletProviderId:i,dcApiSupported:s},c=await Ce(`${r}/v2/presentations/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)});if(c.isErr())return u(c.error);const p=await c.value.json();return Q(le)(p)?a(p):u({type:Ie.UnexpectedResponse,message:"Create session returned unsupported response"})})({credentialQuery:l,challenge:o,redirectUri:d,walletProviderId:null!==(n=null==c?void 0:c.walletProviderId)&&void 0!==n?n:void 0,apiBaseUrl:i,applicationId:s,dcApiSupported:p});if(f.isErr())return u({type:ge.RequestCredentialsFailed,message:be.FailedToCreateSession,cause:f.error});const y=f.value,{sessionKey:v,sessionId:h}=y;if(y.type===ae.DigitalCredentialsApi){const{request:e,sessionTtl:t}=y;return await(async e=>{const{apiBaseUrl:t,sessionId:n,sessionKey:r,challenge:i,request:s,sessionTtl:o}=e,l=window.setTimeout((()=>De()),1e3*o),c=Fe({sessionId:n,sessionKey:r,sessionTimeoutId:l}),p=await tt(s,c);if(p.isErr())return await et(),u(p.error);const d=p.value,f=nt(d);if(f.isErr())return await et(),u(f.error);const y=f.value,v=await rt({apiBaseUrl:t,sessionId:n,sessionKey:r,challenge:i,protocol:y.protocol,data:y.data});if(v.isErr())return u({type:ge.RequestCredentialsFailed,message:be.FailedToVerifyCredentialResponse,cause:v.error});const h=v.value;return a({result:"challenge"in h?h:void 0,sessionId:n})})({apiBaseUrl:i,request:e,sessionId:h,sessionKey:v,challenge:o,sessionTtl:t})}if(!c)return u({type:ge.RequestCredentialsFailed,message:be.MissingOpenId4vpConfig});const{sessionUrl:m}=y;return d?await ot({challenge:o,apiBaseUrl:i,applicationId:s,sessionUrl:m,sessionKey:v,sessionId:h}):await Ze({challenge:o,apiBaseUrl:i,sessionUrl:m,sessionKey:v,sessionId:h})},ut=e=>{if(!e)return;let t;var n;return e&&e.mode?t=e.mode:(n=navigator.userAgent,t=_e({ua:n,tablet:!1})?oe.SameDevice:oe.CrossDevice),t===oe.SameDevice&&!Q(ve)(e)&&e.redirectUri?e.redirectUri.trim():void 0};var lt,ct;!function(e){e.HandleRedirectCallbackFailed="HandleRedirectCallbackFailed"}(lt||(lt={})),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"}(ct||(ct={}));const pt=async()=>{const t=Ae();if(!t)throw new e(Ue.SdkNotInitialized);const{apiBaseUrl:n}=t,r=(i=window.location.hash,s="response_code",new URLSearchParams(i.split("#")[1]).get(s));var i,s;if(!r)return u({type:lt.HandleRedirectCallbackFailed,message:ct.FailedToFindResponseCode});const o=window.localStorage.getItem(pe.sessionId),l=window.localStorage.getItem(pe.challenge);if(!o||!l)return u({type:lt.HandleRedirectCallbackFailed,message:ct.FailedToFindActiveSession});const c=await Qe({challenge:l,responseCode:r,sessionId:o,apiBaseUrl:n});return c.isErr()?u({type:lt.HandleRedirectCallbackFailed,message:ct.FailedToGetSessionResult,cause:c.error}):a({result:"challenge"in c.value?c.value:void 0,sessionId:c.value.sessionId})},dt={generateChallenge:Ge,getVersion:()=>de,unwrap:(t,n)=>{if(t.isOk())return t.value;throw new e(null!=n?n:"Error unwrapping result",t.error)}};export{we as AbortSessionErrorType,X as ClaimType,Z as CredentialBrandingImageFormat,lt as HandleRedirectCallbackErrorType,ee as MobileCredentialResponseErrorCode,W as MobileCredentialVerificationReasonType,oe as Mode,te as OpenidPresentationCredentialProfileSupported,ge as RequestCredentialsErrorType,et as abortCredentialRequest,pt as handleRedirectCallback,Oe as initialize,it as isDigitalCredentialsApiSupported,at as requestCredentials,dt as utils};
37
37
  //# sourceMappingURL=verifier-js.production.esm.js.map