UNPKG

@reclaimprotocol/browser-extension-sdk

Version:

This guide will walk you through integrating the Reclaim Protocol Browser Extension SDK into your own browser extension or web application. It covers installation, manifest configuration, background initialization, content script setup, and how to trigg

2 lines 6.41 kB
(()=>{function n(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,r,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",c=o.toStringTag||"@@toStringTag";function a(n,o,i,c){var a=o&&o.prototype instanceof s?o:s,d=Object.create(a.prototype);return t(d,"_invoke",function(n,t,o){var i,c,a,s=0,d=o||[],p=!1,f={p:0,n:0,v:e,a:l,f:l.bind(e,4),d:function(n,t){return i=n,c=0,a=e,f.n=t,u}};function l(n,t){for(c=n,a=t,r=0;!p&&s&&!o&&r<d.length;r++){var o,i=d[r],l=f.p,v=i[2];n>3?(o=v===t)&&(a=i[(c=i[4])?5:(c=3,3)],i[4]=i[5]=e):i[0]<=l&&((o=n<2&&l<i[1])?(c=0,f.v=t,f.n=i[1]):l<v&&(o=n<3||i[0]>t||t>v)&&(i[4]=n,i[5]=t,f.n=v,c=0))}if(o||n>1)return u;throw p=!0,t}return function(o,d,v){if(s>1)throw TypeError("Generator is already running");for(p&&1===d&&l(d,v),c=d,a=v;(r=c<2?e:a)||!p;){i||(c?c<3?(c>1&&(f.n=-1),l(c,a)):f.n=a:f.v=a);try{if(s=2,i){if(c||(o="next"),r=i[o]){if(!(r=r.call(i,a)))throw TypeError("iterator result is not an object");if(!r.done)return r;a=r.value,c<2&&(c=0)}else 1===c&&(r=i.return)&&r.call(i),c<2&&(a=TypeError("The iterator does not provide a '"+o+"' method"),c=1);i=e}else if((r=(p=f.n<0)?a:n.call(t,f))!==u)break}catch(n){i=e,c=1,a=n}finally{s=1}}return{value:r,done:p}}}(n,i,c),!0),d}var u={};function s(){}function d(){}function p(){}r=Object.getPrototypeOf;var f=[][i]?r(r([][i]())):(t(r={},i,function(){return this}),r),l=p.prototype=s.prototype=Object.create(f);function v(n){return Object.setPrototypeOf?Object.setPrototypeOf(n,p):(n.__proto__=p,t(n,c,"GeneratorFunction")),n.prototype=Object.create(l),n}return d.prototype=p,t(l,"constructor",p),t(p,"constructor",d),d.displayName="GeneratorFunction",t(p,c,"GeneratorFunction"),t(l),t(l,c,"Generator"),t(l,i,function(){return this}),t(l,"toString",function(){return"[object Generator]"}),(n=function(){return{w:a,m:v}})()}function t(n,e,r,o){var i=Object.defineProperty;try{i({},"",{})}catch(n){i=0}t=function(n,e,r,o){function c(e,r){t(n,e,function(n){return this._invoke(e,r,n)})}e?i?i(n,e,{value:r,enumerable:!o,configurable:!o,writable:!o}):n[e]=r:(c("next",0),c("throw",1),c("return",2))},t(n,e,r,o)}function e(n,t,e,r,o,i,c){try{var a=n[i](c),u=a.value}catch(n){return void e(n)}a.done?t(u):Promise.resolve(u).then(r,o)}function r(n){return function(){var t=this,r=arguments;return new Promise(function(o,i){var c=n.apply(t,r);function a(n){e(c,o,i,a,u,"next",n)}function u(n){e(c,o,i,a,u,"throw",n)}a(void 0)})}}!function(){"use strict";console.log("INJECTION SCRIPTS!!! LOADED!!!!");var t=function(n){return"".concat("https://api.reclaimprotocol.org","/api/providers/").concat(n,"/custom-injection")},e=function(){for(var n,t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return(n=console).error.apply(n,["❌ [Injection Script Error]:"].concat(e))},o=function(){for(var n,t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return(n=console).info.apply(n,["ℹ️ [Injection Script Info]:"].concat(e))};function i(){try{var n="reclaimProviderId";localStorage.setItem(n,"7519ad78-208a-425d-9fac-97c13b0f0d4d");var t=localStorage.getItem(n);return t?(o("Found provider ID in localStorage[".concat(n,"]: ").concat(t)),t):(e("Provider ID not found in local storage"),null)}catch(n){return e("Error accessing localStorage:",n),null}}function c(){return new Promise(function(n){var t=function(e){e.source===window&&"RECLAIM_PROVIDER_ID_RESPONSE"===e.data.action&&(window.removeEventListener("message",t),n(e.data.providerId))};window.addEventListener("message",t),window.postMessage({action:"RECLAIM_GET_PROVIDER_ID",source:"injection-script"},"*"),setTimeout(function(){window.removeEventListener("message",t),n(null)},5e3)})}function a(n){return u.apply(this,arguments)}function u(){return(u=r(n().m(function r(i){var c,a,u;return n().w(function(n){for(;;)switch(n.p=n.n){case 0:return n.p=0,o("Fetching injection script for provider: ".concat(i)),n.n=1,fetch(t(i),{method:"GET",headers:{"Content-Type":"application/json","ngrok-skip-browser-warning":"true"}});case 1:if((c=n.v).ok){n.n=2;break}throw new Error("HTTP error! status: ".concat(c.status));case 2:return n.n=3,c.text();case 3:if((a=n.v)&&""!==a.trim()){n.n=4;break}return o("No injection script content found for provider: ".concat(i)),n.a(2,null);case 4:return o("Successfully fetched injection script for provider: ".concat(i)),n.a(2,{script:a,providerData:{httpProviderId:i,name:"Unknown Provider"}});case 5:return n.p=5,u=n.v,e("Failed to fetch injection script for provider ".concat(i,":"),u),n.a(2,null)}},r,null,[[0,5]])}))).apply(this,arguments)}function s(n,t){try{o("Executing injection script for provider: ".concat(t.name||"Unknown")),new Function("window","document","console","localStorage","sessionStorage","providerData",n)(window,document,console,localStorage,sessionStorage,t),o("Successfully executed injection script for provider: ".concat(t.name||"Unknown")),window.dispatchEvent(new CustomEvent("reclaimInjectionScriptExecuted",{detail:{providerId:t.httpProviderId,providerName:t.name,timestamp:Date.now()}}))}catch(n){e("Error executing injection script:",n),window.dispatchEvent(new CustomEvent("reclaimInjectionScriptError",{detail:{providerId:t.httpProviderId,providerName:t.name,error:n.message,timestamp:Date.now()}}))}}function d(){return p.apply(this,arguments)}function p(){return(p=r(n().m(function t(){var r,u,d;return n().w(function(n){for(;;)switch(n.p=n.n){case 0:if(n.p=0,r=i()){n.n=2;break}return o("Provider ID not found in localStorage, requesting from extension..."),n.n=1,c();case 1:r=n.v;case 2:if(r){n.n=3;break}return e("Cannot load injection script: Provider ID not found"),n.a(2);case 3:return n.n=4,a(r);case 4:if(u=n.v){n.n=5;break}return o("No injection script to execute"),n.a(2);case 5:s(u.script,u.providerData),n.n=7;break;case 6:n.p=6,d=n.v,e("Error in loadAndExecuteInjectionScript:",d);case 7:return n.a(2)}},t,null,[[0,6]])}))).apply(this,arguments)}window.reclaimInjectionLoader={loadAndExecuteInjectionScript:d,getProviderIdFromStorage:i,getProviderIdFromExtension:c,fetchProviderInjectionScript:a,executeInjectionScript:s},o("Reclaim Injection Script Loader initialized and injected successfully"),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",d):d()}()})(); //# sourceMappingURL=injection-scripts.bundle.js.map