@livechat/accounts-sdk 2.2.3 → 2.2.4-beta.1

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.
@@ -40,5 +40,5 @@ function We(t){this.handler=new ze(t)}Be.prototype.getItem=function(t){return Te
40
40
  * @file
41
41
  * @author Auth0 https://github.com/auth0/auth0.js
42
42
  * @license MIT
43
- */function Ye(t,e,r){let n="";for(let o=0;o<t;o++){const t=Math.floor(Math.random()*r);n+=e.charAt(t)}return n}var Xe={string:function(t){const e="0123456789ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvwxyz-._~",r=window.crypto||window.msCrypto;if(!(r&&"function"==typeof r.getRandomValues))return Ye(t,e,65);const n=65*Math.floor(256/65);if(0===n)return Ye(t,e,65);const o=[];for(;o.length<t;){const i=t-o.length,a=new Uint8Array(i);r.getRandomValues(a);for(let r=0;r<a.length&&o.length<t;r++){const t=a[r];t>=n||o.push(e.charAt(t%65))}}return o.join("")}};return class{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(null==t.client_id)throw new Error("client id not provided");this.options=Object.assign({},{organization_id:"",prompt:"",response_type:"token",popup_flow:"auto",state:"",verify_state:!0,verify_callback:!0,scope:null,redirect_uri:"",email_hint:null,server_url:"https://accounts.livechat.com",tracking:{utm_source:"accounts.livechat.com",utm_medium:"accounts-sdk"},transaction:{namespace:"com.livechat.accounts",key_length:32,force_local_storage:!1},pkce:{enabled:!0,code_verifier_length:128,code_challange_method:"S256"}},t),this.transaction=new Ke(this.options),this.redirectUriParamsPersister=new Je(this.options)}iframe(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=Object.assign({},this.options,t);return new Ue(this,e)}popup(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=Object.assign({},this.options,t);return new n(this,e)}redirect(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=Object.assign({},this.options,t);return new Fe(this,e)}authorizeURL(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const r=Object.assign({},this.options,t);r.state||(r.state=Xe.string(r.key_length)),r.redirect_uri||(r.redirect_uri=window.location.href);const n=Le(r,["client_id","organization_id","redirect_uri","state","response_type","scope","prompt"]);Object.assign(n,r.tracking),null===n.scope&&delete n.scope,null!=e&&(n.flow=e),r.email_hint&&(n.email=r.email_hint);let o=r.server_url;if("manual"===r.popup_flow&&(o+="/signin"),r.path&&(o+=r.path),"code"===r.response_type&&r.pkce.enabled){const t=r.pkce.code_verifier||Xe.string(r.pkce.code_verifier_length);switch(r.pkce.code_challange_method){case"S256":{const e=qe.hash.sha256.hash(t);Object.assign(n,{code_verifier:t,code_challenge:$e.base64URLEncode(e),code_challenge_method:r.pkce.code_challange_method});break}default:Object.assign(n,{code_verifier:t,code_challenge:t,code_challenge_method:r.pkce.code_challange_method})}}return this.transaction.generate(n),this.redirectUriParamsPersister.persist(n),delete n.code_verifier,o+"?"+Me.stringify(n)}verify(t){const e=this.transaction.get(t.state);return t.state&&this.options.verify_state&&e.state!=t.state?null:e}}}));
43
+ */function Ye(t,e,r){let n="";for(let o=0;o<t;o++){const t=Math.floor(Math.random()*r);n+=e.charAt(t)}return n}var Xe={string:function(t){const e="0123456789ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvwxyz-._~",r=window.crypto||window.msCrypto;if(!(r&&"function"==typeof r.getRandomValues))return Ye(t,e,65);const n=65*Math.floor(256/65);if(0===n)return Ye(t,e,65);const o=[];for(;o.length<t;){const i=t-o.length,a=new Uint8Array(i);r.getRandomValues(a);for(let r=0;r<a.length&&o.length<t;r++){const t=a[r];t>=n||o.push(e.charAt(t%65))}}return o.join("")}};function Ze(t){if(!t||void 0===t.code_challange_method)return t;const e=Object.assign({},t);return console.warn("[accounts-sdk] pkce.code_challange_method is deprecated and will be removed in v3.0.0. Use code_challenge_method instead."),void 0===e.code_challenge_method&&(e.code_challenge_method=e.code_challange_method),delete e.code_challange_method,e}return class{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(null==t.client_id)throw new Error("client id not provided");this.options=Object.assign({},{organization_id:"",prompt:"",response_type:"token",popup_flow:"auto",state:"",verify_state:!0,verify_callback:!0,scope:null,redirect_uri:"",email_hint:null,server_url:"https://accounts.livechat.com",tracking:{utm_source:"accounts.livechat.com",utm_medium:"accounts-sdk"},transaction:{namespace:"com.livechat.accounts",key_length:32,force_local_storage:!1},pkce:{enabled:!0,code_verifier_length:128,code_challenge_method:"S256"}},t),this.options.pkce=Ze(this.options.pkce),this.transaction=new Ke(this.options),this.redirectUriParamsPersister=new Je(this.options)}iframe(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=Object.assign({},this.options,t);return new Ue(this,e)}popup(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=Object.assign({},this.options,t);return new n(this,e)}redirect(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=Object.assign({},this.options,t);return new Fe(this,e)}authorizeURL(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const r=Object.assign({},this.options,t);r.pkce=Ze(r.pkce),r.state||(r.state=Xe.string(r.key_length)),r.redirect_uri||(r.redirect_uri=window.location.href);const n=Le(r,["client_id","organization_id","redirect_uri","state","response_type","scope","prompt"]);Object.assign(n,r.tracking),null===n.scope&&delete n.scope,null!=e&&(n.flow=e),r.email_hint&&(n.email=r.email_hint);let o=r.server_url;if("manual"===r.popup_flow&&(o+="/signin"),r.path&&(o+=r.path),"code"===r.response_type&&r.pkce.enabled){const t=r.pkce.code_verifier||Xe.string(r.pkce.code_verifier_length);switch(r.pkce.code_challenge_method){case"S256":{const e=qe.hash.sha256.hash(t).reduce(((t,e)=>t+String.fromCharCode(e>>>24&255,e>>>16&255,e>>>8&255,255&e)),"");Object.assign(n,{code_verifier:t,code_challenge:$e.base64URLEncode(e),code_challenge_method:r.pkce.code_challenge_method});break}default:Object.assign(n,{code_verifier:t,code_challenge:t,code_challenge_method:r.pkce.code_challenge_method})}}return this.transaction.generate(n),this.redirectUriParamsPersister.persist(n),delete n.code_verifier,o+"?"+Me.stringify(n)}verify(t){const e=this.transaction.get(t.state);return t.state&&this.options.verify_state&&e.state!=t.state?null:e}}}));
44
44
  //# sourceMappingURL=accounts-sdk.min.js.map