Creating a webcal link using a blob

I have a chrome extension which scrapes a specific page and creates a valid .ics file. I am able to have my user download this file using google’s chrome.downloads api. However I want to be able to convert the javascript blob which contains the text of the .ics file to a link which can be accessed through the webcal:// i.e webcal://blob:website:random_chars and will launch their local calendar application.

This is what I have tried so far:

            var blob = new Blob([ical], {type: "text/calendar"});
            //creates url out of text blob
            var myFile = new File([blob], "Classes.ics");
            var url = URL.createObjectURL(myFile);
            url = url.substring(0,5) + "webcal://" + url.substring(13,url.length);
            console.log(url);
            location.replace(url);

TL/DR: make the blob accessible to webcal://

Loading blob resource url in to chrome extension

i want to make a chrome extension which download a image from web page, src of image is blob url. when i am trying to make xmlhttp request on blob url through extension i am unable to access blob url i am getting following error

There were warnings when trying to install this extension:
Permission ‘blob:https://web.whatsapp.com/d6b0a8f3-9f38-4588-9f0a-e11ff9989452‘ is unknown or URL pattern is malformed.

how to give permission to access a blob url through chrome extension.