in share/src/components/util.ts [117:160]
export function shareScriptAsync(screenshotUri: string, mainTS: string, mainBlocks: string) {
let thumbnailBuffer: string;
let thumbnailMimeType: string;
if (screenshotUri) {
const m = /^data:(image\/(png|gif));base64,([a-zA-Z0-9+/]+=*)$/.exec(screenshotUri);
if (m) {
thumbnailBuffer = m[3];
thumbnailMimeType = m[1];
}
}
const text = {
...scriptText
}
text["main.ts"] = mainTS;
text["main.blocks"] = mainBlocks;
const scrReq = {
name: "Arcade Game",
target: "arcade",
targetVersion: "0.12.17",
description: "Made with ❤️ in Microsoft MakeCode Arcade.",
editor: "blocksprj",
text,
meta: {
// versions: pxt.appTarget.versions,
// blocksHeight: meta.blocksHeight,
// blocksWidth: meta.blocksWidth
},
thumbnailBuffer,
thumbnailMimeType
};
const opts: HttpRequestOptions = {
headers: {},
url: "https://arcade.makecode.com/api/scripts",
data: scrReq,
allowGzipPost: true
}
return requestAsync(opts);
}