@raycast/api 1.92.1 → 1.93.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.
- package/dist/commands/build/index.js +155 -155
- package/dist/commands/develop/index.js +151 -151
- package/dist/commands/evals/index.js +1 -1
- package/dist/commands/publish/index.js +202 -202
- package/dist/commands/pull-contributions/index.js +1 -1
- package/dist/commands/version/index.js +1 -1
- package/dist/utils/esbuild-plugins/swift-files.js +1 -1
- package/dist/utils/evals/render-results.js +1 -1
- package/dist/utils/publish/publish-to-store.js +239 -239
- package/dist/utils/publish/pull-contributions.js +1 -1
- package/dist/utils/raycast-app-communication.js +1 -1
- package/oclif.manifest.json +32 -32
- package/package.json +2 -2
- package/types/index.d.ts +55 -35
|
@@ -33,7 +33,7 @@ To automate this process, you have to authenticate with GitHub.
|
|
|
33
33
|
First copy your one-time code: ${r.user_code}
|
|
34
34
|
Press Enter to open github.com in your browser...`),process.stdin.setRawMode(!0),process.stdin.resume(),await new Promise(i=>process.stdin.once("data",u=>{let l=[...u];l.length>0&&l[0]===3&&(console.log("^C"),process.exit(1)),process.stdin.setRawMode(!1),i(void 0)})),va(r.verification_uri);let o=r.interval*1e3;for(;;){await new Promise(i=>setTimeout(i,o));try{let i=await Ie("https://github.com/login/oauth/access_token",{method:"POST",body:JSON.stringify({client_id:e,device_code:r.device_code,grant_type:"urn:ietf:params:oauth:grant-type:device_code"})});if(!i.error){tn("githubAccessToken",i.access_token);return}if(i.error!=="authorization_pending")throw new Error(i.error_description)}catch(i){throw new Error(`failed to get the access token (${i.message})`)}}}async function Ra(e,r){let o=pe("githubAccessToken"),i=await Ie(`https://api.github.com/repos/${e.owner.login}/${e.name}/forks`,{method:"POST",token:o,body:JSON.stringify({name:r,default_branch_only:!0})});for(let u=0;u<=30;u++){try{await Ie(`https://api.github.com/repos/${i.owner.login}/${i.name}/commits?per_page=1`,{token:o});break}catch(l){if(u===30)throw new Error(`fork not ready after 1min (${l.message})`)}await new Promise(l=>setTimeout(l,2e3))}return i}async function Ba(e){let r=pe("githubAccessToken");try{await Ie(`https://api.github.com/repos/${e.owner.login}/${e.name}/merge-upstream`,{method:"POST",token:r,body:JSON.stringify({branch:"main"})})}catch(o){throw new Error(`could not get the latest changes. Head to https://github.com/${e.owner.login}/${e.name}, select the Sync fork dropdown menu above the list of files, and then click Update branch. Once you've done that, try running this command again
|
|
35
35
|
|
|
36
|
-
Error: ${o.message}`)}}async function Ta(e){let r=pe("githubAccessToken");await Ie(`https://api.github.com/repos/${e.owner.login}/${e.name}`,{method:"POST",token:r,body:JSON.stringify({delete_branch_on_merge:"true"})})}function Pa(e,r){return gu(`https://oauth2:${pe("githubAccessToken")}@github.com/${e.owner.login}/${e.name}`,r)}function ii(e,r){return bu(e,`https://oauth2:${pe("githubAccessToken")}@github.com/${r.owner.login}/${r.name}`)}async function Oa(e,r,o){let i=`"\\"name\\": \\"${r}\\"" "\\"author\\": \\"${o}\\"" repo:raycast/extensions in:file path:extensions extension:json`,u=pe("githubAccessToken"),f=(await Ie(`https://api.github.com/search/code?q=${encodeURIComponent(i)}&per_page=3`,{token:u})).items.filter(d=>d.name==="package.json");if(f.length===0)return oi.default.join("extensions",r);if(f.length>1)throw new Error(`found more than one extension with name ${r}`);return oi.default.dirname(f[0].path)}async function xa(e){let r=`type:pr repo:raycast/extensions ${e} is:merged`,o=pe("githubAccessToken");return(await Ie(`https://api.github.com/search/issues?q=${encodeURIComponent(r)}&per_page=1`,{token:o})).items.length>0}var ka=!1;async function ui(e){if(!await mu())throw new Error("please create a git repository first (git init)");if(await Xt())throw new Error("please commit or discard your uncommited changes first (git commit -a -m 'your changes')");await Aa();let r={owner:{login:"raycast"},name:"extensions"},o=si.default.join(Io(),"public-extensions-fork"),i=`ext/${e.name}`,u="",l,f=await bt("getting fork",async()=>{try{l=await Ra(r,"raycast-extensions"),await Ba(l),await Ta(l)}catch(d){throw new Error(`fork extensions repo: ${d.message}`)}},{printError:!1});if(f){if(f.message.includes("not authorized \u2013 please log in first using `npx ray login`")){if(ka)throw new Error("fork extensions repo: not authorized");return ka=!0,tn("githubAccessToken",void 0),ui(e)}throw f}else l=l;if(!Ia.default.existsSync(o)){let d=await bt("cloning repo",async()=>{await Pa(l,o)},{printError:!1});if(d)throw d}if(et(o),await ii("origin",l),await ii("upstream",r),f=await bt("preparing clone",async()=>{let d=await Oa(r,e.name,e.author);u=si.default.join(o,d),et(void 0);let p=await Ao("user.name"),g=await Ao("user.email");if(et(o),await Ro("user.name",p),await Ro("user.email",g),await Fu(d),await Oe("main"),await To("upstream","main"),await yu("upstream/main"),await en(i)){await Ft(i),await To("origin",i);let x=await pu();await xa(x)&&(await _u(i),await Ft(i))}else await Bo(i),await Ft(i)},{printError:!1}),f)throw f;return{upstream:r,fork:l,clonePath:o,extensionPathInClone:u,branch:i}}async function gd(e){let{clonePath:r,extensionPathInClone:o,branch:i}=await ui(e),u=$a.default.existsSync(Wa.default.join(o,"package.json")),{latestPublishTag:l,latestPullTag:f}=Ru(i);et(r),await bt("pulling new contributions",async()=>{if(!u)return"no new contributions";if(await en(i)?await Eu(i)||(await Oe(i),await vu(i)):(await Oe("main"),await wu(f,"Used by the Ray CLI to track the latest commit that was pulled")),et(void 0),await Cu(l)?await Oe(l):await Oe(hu),xo(o,process.cwd()),await Xt()){let p=`contributions/merge-${new Date().getTime()}`;await Ft(p),await Su("Pull contributions"),await Oe("@{-2}");try{await Au(p)}catch(g){if(await Xt())return"Some contributions conflict with your changes.\n\nYou can do two things:\n\n- Decide not to merge but you won't be able to publish your changes. The only clean-ups you need are to run `git merge --abort`.\n\n- Resolve the conflicts. Edit the files into shape and `git add` them. Use `git merge --continue` to seal the deal. You will be able to run `npm run publish` afterwards.";throw g}
|
|
36
|
+
Error: ${o.message}`)}}async function Ta(e){let r=pe("githubAccessToken");await Ie(`https://api.github.com/repos/${e.owner.login}/${e.name}`,{method:"POST",token:r,body:JSON.stringify({delete_branch_on_merge:"true"})})}function Pa(e,r){return gu(`https://oauth2:${pe("githubAccessToken")}@github.com/${e.owner.login}/${e.name}`,r)}function ii(e,r){return bu(e,`https://oauth2:${pe("githubAccessToken")}@github.com/${r.owner.login}/${r.name}`)}async function Oa(e,r,o){let i=`"\\"name\\": \\"${r}\\"" "\\"author\\": \\"${o}\\"" repo:raycast/extensions in:file path:extensions extension:json`,u=pe("githubAccessToken"),f=(await Ie(`https://api.github.com/search/code?q=${encodeURIComponent(i)}&per_page=3`,{token:u})).items.filter(d=>d.name==="package.json");if(f.length===0)return oi.default.join("extensions",r);if(f.length>1)throw new Error(`found more than one extension with name ${r}`);return oi.default.dirname(f[0].path)}async function xa(e){let r=`type:pr repo:raycast/extensions ${e} is:merged`,o=pe("githubAccessToken");return(await Ie(`https://api.github.com/search/issues?q=${encodeURIComponent(r)}&per_page=1`,{token:o})).items.length>0}var ka=!1;async function ui(e){if(!await mu())throw new Error("please create a git repository first (git init)");if(await Xt())throw new Error("please commit or discard your uncommited changes first (git commit -a -m 'your changes')");await Aa();let r={owner:{login:"raycast"},name:"extensions"},o=si.default.join(Io(),"public-extensions-fork"),i=`ext/${e.name}`,u="",l,f=await bt("getting fork",async()=>{try{l=await Ra(r,"raycast-extensions"),await Ba(l),await Ta(l)}catch(d){throw new Error(`fork extensions repo: ${d.message}`)}},{printError:!1});if(f){if(f.message.includes("not authorized \u2013 please log in first using `npx ray login`")){if(ka)throw new Error("fork extensions repo: not authorized");return ka=!0,tn("githubAccessToken",void 0),ui(e)}throw f}else l=l;if(!Ia.default.existsSync(o)){let d=await bt("cloning repo",async()=>{await Pa(l,o)},{printError:!1});if(d)throw d}if(et(o),await ii("origin",l),await ii("upstream",r),f=await bt("preparing clone",async()=>{let d=await Oa(r,e.name,e.author);u=si.default.join(o,d),et(void 0);let p=await Ao("user.name"),g=await Ao("user.email");if(et(o),await Ro("user.name",p),await Ro("user.email",g),await Fu(d),await Oe("main"),await To("upstream","main"),await yu("upstream/main"),await en(i)){await Ft(i),await To("origin",i);let x=await pu();await xa(x)&&(await _u(i),await Ft(i))}else await Bo(i),await Ft(i)},{printError:!1}),f)throw f;return{upstream:r,fork:l,clonePath:o,extensionPathInClone:u,branch:i}}async function gd(e){let{clonePath:r,extensionPathInClone:o,branch:i}=await ui(e),u=$a.default.existsSync(Wa.default.join(o,"package.json")),{latestPublishTag:l,latestPullTag:f}=Ru(i);et(r),await bt("pulling new contributions",async()=>{if(!u)return"no new contributions";if(await en(i)?await Eu(i)||(await Oe(i),await vu(i)):(await Oe("main"),await wu(f,"Used by the Ray CLI to track the latest commit that was pulled")),et(void 0),await Cu(l)?await Oe(l):await Oe(hu),xo(o,process.cwd()),await Xt()){let p=`contributions/merge-${new Date().getTime()}`;await Ft(p),await Su("Pull contributions"),await Oe("@{-2}");try{await Au(p)}catch(g){if(await Xt())return"Some contributions conflict with your changes.\n\nYou can do two things:\n\n- Decide not to merge but you won't be able to publish your changes. The only clean-ups you need are to run `git merge --abort`.\n\n- Resolve the conflicts. Edit the files into shape and `git add` them. Use `git merge --continue` to seal the deal. You will be able to run `npm run publish` afterwards.";throw g}return"contributions merged. You can now run `npm run publish` again"}else return await Oe(Du),"no new contributions"})&&process.exit(1)}0&&(module.exports={pullContributions});
|
|
37
37
|
/*! Bundled license information:
|
|
38
38
|
|
|
39
39
|
node-fetch-cjs/dist/index.js:
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";var pe=Object.create;var I=Object.defineProperty;var ge=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var he=Object.getPrototypeOf,ye=Object.prototype.hasOwnProperty;var y=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),we=(e,r)=>{for(var t in r)I(e,t,{get:r[t],enumerable:!0})},U=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of me(r))!ye.call(e,s)&&s!==t&&I(e,s,{get:()=>r[s],enumerable:!(i=ge(r,s))||i.enumerable});return e};var p=(e,r,t)=>(t=e!=null?pe(he(e)):{},U(r||!e||!e.__esModule?I(t,"default",{value:e,enumerable:!0}):t,e)),be=e=>U(I({},"__esModule",{value:!0}),e);var z=y((He,V)=>{var ke=require("node:tty"),Ce=ke?.WriteStream?.prototype?.hasColors?.()??!1,o=(e,r)=>{if(!Ce)return s=>s;let t=`\x1B[${e}m`,i=`\x1B[${r}m`;return s=>{let a=s+"",c=a.indexOf(i);if(c===-1)return t+a+i;let f=t,u=0;for(;c!==-1;)f+=a.slice(u,c)+t,u=c+i.length,c=a.indexOf(i,u);return f+=a.slice(u)+i,f}},n={};n.reset=o(0,0);n.bold=o(1,22);n.dim=o(2,22);n.italic=o(3,23);n.underline=o(4,24);n.overline=o(53,55);n.inverse=o(7,27);n.hidden=o(8,28);n.strikethrough=o(9,29);n.black=o(30,39);n.red=o(31,39);n.green=o(32,39);n.yellow=o(33,39);n.blue=o(34,39);n.magenta=o(35,39);n.cyan=o(36,39);n.white=o(37,39);n.gray=o(90,39);n.bgBlack=o(40,49);n.bgRed=o(41,49);n.bgGreen=o(42,49);n.bgYellow=o(43,49);n.bgBlue=o(44,49);n.bgMagenta=o(45,49);n.bgCyan=o(46,49);n.bgWhite=o(47,49);n.bgGray=o(100,49);n.redBright=o(91,39);n.greenBright=o(92,39);n.yellowBright=o(93,39);n.blueBright=o(94,39);n.magentaBright=o(95,39);n.cyanBright=o(96,39);n.whiteBright=o(97,39);n.bgRedBright=o(101,49);n.bgGreenBright=o(102,49);n.bgYellowBright=o(103,49);n.bgBlueBright=o(104,49);n.bgMagentaBright=o(105,49);n.bgCyanBright=o(106,49);n.bgWhiteBright=o(107,49);V.exports=n});var D=y((er,Z)=>{"use strict";var H=require("fs"),B;function Pe(){try{return H.statSync("/.dockerenv"),!0}catch{return!1}}function Se(){try{return H.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch{return!1}}Z.exports=()=>(B===void 0&&(B=Pe()||Se()),B)});var re=y((rr,O)=>{"use strict";var $e=require("os"),Te=require("fs"),Q=D(),ee=()=>{if(process.platform!=="linux")return!1;if($e.release().toLowerCase().includes("microsoft"))return!Q();try{return Te.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!Q():!1}catch{return!1}};process.env.__IS_WSL_TEST__?O.exports=ee:O.exports=ee()});var ne=y((tr,te)=>{"use strict";te.exports=(e,r,t)=>{let i=s=>Object.defineProperty(e,r,{value:s,enumerable:!0,writable:!0});return Object.defineProperty(e,r,{configurable:!0,enumerable:!0,get(){let s=t();return i(s),s},set(s){i(s)}}),e}});var le=y((nr,ue)=>{var Ne=require("path"),Be=require("child_process"),{promises:v,constants:ce}=require("fs"),C=re(),De=D(),R=ne(),oe=Ne.join(__dirname,"xdg-open"),{platform:h,arch:se}=process,Oe=()=>{try{return v.statSync("/run/.containerenv"),!0}catch{return!1}},F;function Fe(){return F===void 0&&(F=Oe()||De()),F}var Re=(()=>{let e="/mnt/",r;return async function(){if(r)return r;let t="/etc/wsl.conf",i=!1;try{await v.access(t,ce.F_OK),i=!0}catch{}if(!i)return e;let s=await v.readFile(t,{encoding:"utf8"}),a=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(s);return a?(r=a.groups.mountPoint.trim(),r=r.endsWith("/")?r:`${r}/`,r):e}})(),ie=async(e,r)=>{let t;for(let i of e)try{return await r(i)}catch(s){t=s}throw t},P=async e=>{if(e={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...e},Array.isArray(e.app))return ie(e.app,f=>P({...e,app:f}));let{name:r,arguments:t=[]}=e.app||{};if(t=[...t],Array.isArray(r))return ie(r,f=>P({...e,app:{name:f,arguments:t}}));let i,s=[],a={};if(h==="darwin")i="open",e.wait&&s.push("--wait-apps"),e.background&&s.push("--background"),e.newInstance&&s.push("--new"),r&&s.push("-a",r);else if(h==="win32"||C&&!Fe()&&!r){let f=await Re();i=C?`${f}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`:`${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\powershell`,s.push("-NoProfile","-NonInteractive","\u2013ExecutionPolicy","Bypass","-EncodedCommand"),C||(a.windowsVerbatimArguments=!0);let u=["Start"];e.wait&&u.push("-Wait"),r?(u.push(`"\`"${r}\`""`,"-ArgumentList"),e.target&&t.unshift(e.target)):e.target&&u.push(`"${e.target}"`),t.length>0&&(t=t.map(m=>`"\`"${m}\`""`),u.push(t.join(","))),e.target=Buffer.from(u.join(" "),"utf16le").toString("base64")}else{if(r)i=r;else{let f=!__dirname||__dirname==="/",u=!1;try{await v.access(oe,ce.X_OK),u=!0}catch{}i=process.versions.electron||h==="android"||f||!u?"xdg-open":oe}t.length>0&&s.push(...t),e.wait||(a.stdio="ignore",a.detached=!0)}e.target&&s.push(e.target),h==="darwin"&&t.length>0&&s.push("--args",...t);let c=Be.spawn(i,s,a);return e.wait?new Promise((f,u)=>{c.once("error",u),c.once("close",m=>{if(!e.allowNonzeroExitCode&&m>0){u(new Error(`Exited with code ${m}`));return}f(c)})}):(c.unref(),c)},_=(e,r)=>{if(typeof e!="string")throw new TypeError("Expected a `target`");return P({...r,target:e})},_e=(e,r)=>{if(typeof e!="string")throw new TypeError("Expected a `name`");let{arguments:t=[]}=r||{};if(t!=null&&!Array.isArray(t))throw new TypeError("Expected `appArguments` as Array type");return P({...r,app:{name:e,arguments:t}})};function ae(e){if(typeof e=="string"||Array.isArray(e))return e;let{[se]:r}=e;if(!r)throw new Error(`${se} is not supported`);return r}function G({[h]:e},{wsl:r}){if(r&&C)return ae(r);if(!e)throw new Error(`${h} is not supported`);return ae(e)}var S={};R(S,"chrome",()=>G({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));R(S,"firefox",()=>G({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));R(S,"edge",()=>G({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));_.apps=S;_.openApp=_e;ue.exports=_});var qe={};we(qe,{commFilePath:()=>L,notifyRaycast:()=>Ge,updatePid:()=>de});module.exports=be(qe);var j=require("node:child_process"),d=p(require("node:fs")),x=p(require("node:path"));var A=p(require("node:fs")),$=p(require("node:path")),K=p(require("node:os"));var q=p(require("node:path")),W=p(require("node:fs"));function E(){let e;try{e=q.resolve("package.json")}catch(t){throw new Error(`cannot resolve package manifest path: ${t}`)}let r;try{r=JSON.parse(W.readFileSync(e,"utf8"))}catch(t){throw new Error(`cannot read package manifest: ${t}`)}return r.name=r.name.replace(/^@workaround/g,""),r}var Y={production:{url:"https://www.raycast.com",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},staging:{url:"https://www.rayca.st",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},development:{url:"http://localhost:3000",clientID:"rOCD_LhnXFObSLu9v7788qOGu25FZDqEzGjet4Q45ZY"}}[process.env.API_ENV||"production"],xe="e69bae0ec90f5e838555",g={},T;function w(){let e=E();if(!e.name)throw new Error("extension name in manifest cannot be empty");return $.join(Ae(),"extensions",e.name)}function X(){let e=k(T);return e?`com.raycast.macos.${e}`:"com.raycast.macos"}function J(){return`raycast${k(T)}`}function Ie(e){switch(e){case"raycastApiURL":return process.env.RAY_APIURL||g.APIURL||Y.url;case"raycastAccessToken":return process.env.RAY_TOKEN||g.Token||g.AccessToken||"";case"raycastClientId":return process.env.RAY_CLIENT_ID||g.ClientID||Y.clientID;case"githubClientId":return process.env.RAY_GithubClientID||g.GithubClientID||xe;case"githubAccessToken":return process.env.GITHUB_ACCESS_TOKEN||g.GithubAccessToken||"";case"flavorName":return process.env.RAY_Target||(typeof g.Target>"u"?k("release"):g.Target)}}function k(e){switch(e){case"debug":return"debug";case"internal":return"internal";case"release":return"";case void 0:return Ie("flavorName")}}function Ee(){let e=k(T);return e==""?"raycast":`raycast-${e}`}function Ae(){let e=$.join(K.default.homedir(),".config",Ee());return A.mkdirSync(e,{recursive:!0}),e}var l=p(z());var Ze=(0,l.blue)((0,l.dim)("internal only"));function N(e,r,t){console.log(ve[e]+r),typeof t?.exit<"u"&&process.exit(t.exit)}var ve={wait:`\u{1F550}${(0,l.blue)("wait")} - `,info:`${process.env.GITHUB_ACTIONS==="true"?"\u2139\uFE0F":"\u2139\uFE0F "}${(0,l.cyan)("info")} - `,success:`\u2705${(0,l.green)("ready")} - `,warn:`${process.env.GITHUB_ACTIONS==="true"?"\u26A0\uFE0F":"\u26A0\uFE0F "}${(0,l.yellow)("warn")} - `,error:`\u{1F4A5}${(0,l.red)("error")} - `,event:`\u26A1\uFE0F${(0,l.magenta)("event")} - `,paymentPrompt:`\u{1F4B0}${(0,l.yellowBright)("plan")} - `};var fe=p(le());async function Ge(e,r){let t=!1;switch(e){case"start":{Me(),de(),Le();break}case"stop":{try{d.unlinkSync(L("log"))}catch{}try{d.unlinkSync(L("pid"))}catch{}return}default:t=!0}let i;try{i=E()}catch{return}Ue()||N("warn","Raycast is not running"),t?je(i.name,e,r):await M(i.name,e,r)}function L(e){return x.join(w(),e==="log"?"dev.log":"cli.pid")}function de(){let e=w();try{d.mkdirSync(e,{recursive:!0})}catch(t){throw new Error(`cannot create output directory (${t.message})`)}let r=process.pid.toString();try{d.writeFileSync(x.join(e,"cli.pid"),r,{mode:420})}catch(t){throw new Error(`cannot write pid file (${t.message})`)}}function Le(){let e=w();try{d.mkdirSync(e,{recursive:!0})}catch(r){throw new Error(`cannot create output directory (${r.message})`)}try{d.writeFileSync(x.join(e,"dev.log"),"")}catch(r){throw new Error(`cannot write log file (${r.message})`)}}function Me(){let e=x.join(w(),"cli.pid");try{let i=`kill -9 ${d.readFileSync(e,"utf8").trim()}`;(0,j.execSync)(i,{shell:"/bin/sh"})}catch{}}var b=null;function je(e,r,t){b?(clearTimeout(b),b=setTimeout(()=>{M(e,r,t)},300)):(M(e,r,t),b=setTimeout(()=>{b=null},300))}async function M(e,r,t){let i=process.cwd(),s=`${J()}://cli/${e}/${r}?cwd=${encodeURIComponent(i)}&info=${encodeURIComponent(t||"")}`;try{await(0,fe.default)(s,{background:!0})}catch(a){N("error",`cannot notify Raycast (${a.message})`)}}function Ue(){let r=X(),t="ps -e -o args | grep -v grep | grep -i contents/macos/raycast",i;try{i=(0,j.execSync)(t,{shell:"/bin/sh",encoding:"utf8"})}catch{return!1}let s=i.trim();if(s==="")return!1;let a=s.split(`
|
|
2
|
-
`);for(let c of a){let f=c.indexOf("/Contents/MacOS/Raycast");if(f>-1&&(c=c.substring(0,f)),!!d.existsSync(c))
|
|
2
|
+
`);for(let c of a){let f=c.indexOf("/Contents/MacOS/Raycast");if(f>-1&&(c=c.substring(0,f)),!!d.existsSync(c))return!0}return!1}0&&(module.exports={commFilePath,notifyRaycast,updatePid});
|
package/oclif.manifest.json
CHANGED
|
@@ -694,10 +694,10 @@
|
|
|
694
694
|
"index.js"
|
|
695
695
|
]
|
|
696
696
|
},
|
|
697
|
-
"
|
|
697
|
+
"publish": {
|
|
698
698
|
"aliases": [],
|
|
699
699
|
"args": {},
|
|
700
|
-
"description": "
|
|
700
|
+
"description": "Publish the extension on the Raycast Store.\nPrivate extension are a team feature. Sign up for it here: https://www.raycast.com/pricing (https://www.raycast.com/pricing)",
|
|
701
701
|
"flags": {
|
|
702
702
|
"exit-on-error": {
|
|
703
703
|
"aliases": [
|
|
@@ -746,28 +746,51 @@
|
|
|
746
746
|
"release"
|
|
747
747
|
],
|
|
748
748
|
"type": "option"
|
|
749
|
+
},
|
|
750
|
+
"clipboard": {
|
|
751
|
+
"char": "C",
|
|
752
|
+
"description": "Copy the extension link to the clipboard upon publishing",
|
|
753
|
+
"name": "clipboard",
|
|
754
|
+
"allowNo": false,
|
|
755
|
+
"type": "boolean"
|
|
756
|
+
},
|
|
757
|
+
"skip-validation": {
|
|
758
|
+
"char": "s",
|
|
759
|
+
"description": "Skip validation and always publish \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
|
|
760
|
+
"hidden": true,
|
|
761
|
+
"name": "skip-validation",
|
|
762
|
+
"allowNo": false,
|
|
763
|
+
"type": "boolean"
|
|
764
|
+
},
|
|
765
|
+
"skip-notify-raycast": {
|
|
766
|
+
"description": "Skip notifying Raycast after publishing \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
|
|
767
|
+
"hidden": true,
|
|
768
|
+
"name": "skip-notify-raycast",
|
|
769
|
+
"allowNo": false,
|
|
770
|
+
"type": "boolean"
|
|
749
771
|
}
|
|
750
772
|
},
|
|
751
773
|
"hasDynamicHelp": false,
|
|
752
774
|
"hiddenAliases": [],
|
|
753
|
-
"id": "
|
|
775
|
+
"id": "publish",
|
|
754
776
|
"pluginAlias": "ray",
|
|
755
777
|
"pluginName": "ray",
|
|
756
778
|
"pluginType": "core",
|
|
757
779
|
"strict": true,
|
|
780
|
+
"summary": "Publish the extension",
|
|
758
781
|
"enableJsonFlag": false,
|
|
759
782
|
"isESM": false,
|
|
760
783
|
"relativePath": [
|
|
761
784
|
"dist",
|
|
762
785
|
"commands",
|
|
763
|
-
"
|
|
786
|
+
"publish",
|
|
764
787
|
"index.js"
|
|
765
788
|
]
|
|
766
789
|
},
|
|
767
|
-
"
|
|
790
|
+
"pull-contributions": {
|
|
768
791
|
"aliases": [],
|
|
769
792
|
"args": {},
|
|
770
|
-
"description": "
|
|
793
|
+
"description": "Pull contributions of the extension",
|
|
771
794
|
"flags": {
|
|
772
795
|
"exit-on-error": {
|
|
773
796
|
"aliases": [
|
|
@@ -816,44 +839,21 @@
|
|
|
816
839
|
"release"
|
|
817
840
|
],
|
|
818
841
|
"type": "option"
|
|
819
|
-
},
|
|
820
|
-
"clipboard": {
|
|
821
|
-
"char": "C",
|
|
822
|
-
"description": "Copy the extension link to the clipboard upon publishing",
|
|
823
|
-
"name": "clipboard",
|
|
824
|
-
"allowNo": false,
|
|
825
|
-
"type": "boolean"
|
|
826
|
-
},
|
|
827
|
-
"skip-validation": {
|
|
828
|
-
"char": "s",
|
|
829
|
-
"description": "Skip validation and always publish \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
|
|
830
|
-
"hidden": true,
|
|
831
|
-
"name": "skip-validation",
|
|
832
|
-
"allowNo": false,
|
|
833
|
-
"type": "boolean"
|
|
834
|
-
},
|
|
835
|
-
"skip-notify-raycast": {
|
|
836
|
-
"description": "Skip notifying Raycast after publishing \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
|
|
837
|
-
"hidden": true,
|
|
838
|
-
"name": "skip-notify-raycast",
|
|
839
|
-
"allowNo": false,
|
|
840
|
-
"type": "boolean"
|
|
841
842
|
}
|
|
842
843
|
},
|
|
843
844
|
"hasDynamicHelp": false,
|
|
844
845
|
"hiddenAliases": [],
|
|
845
|
-
"id": "
|
|
846
|
+
"id": "pull-contributions",
|
|
846
847
|
"pluginAlias": "ray",
|
|
847
848
|
"pluginName": "ray",
|
|
848
849
|
"pluginType": "core",
|
|
849
850
|
"strict": true,
|
|
850
|
-
"summary": "Publish the extension",
|
|
851
851
|
"enableJsonFlag": false,
|
|
852
852
|
"isESM": false,
|
|
853
853
|
"relativePath": [
|
|
854
854
|
"dist",
|
|
855
855
|
"commands",
|
|
856
|
-
"
|
|
856
|
+
"pull-contributions",
|
|
857
857
|
"index.js"
|
|
858
858
|
]
|
|
859
859
|
},
|
|
@@ -1099,5 +1099,5 @@
|
|
|
1099
1099
|
]
|
|
1100
1100
|
}
|
|
1101
1101
|
},
|
|
1102
|
-
"version": "1.
|
|
1102
|
+
"version": "1.93.1"
|
|
1103
1103
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@raycast/api",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.93.1",
|
|
4
4
|
"description": "Build extensions for Raycast with React and Node.js.",
|
|
5
5
|
"author": "Raycast Technologies Ltd.",
|
|
6
6
|
"homepage": "https://developers.raycast.com",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"@oclif/plugin-not-found": "^3.2.28",
|
|
20
20
|
"@types/node": "20.8.10",
|
|
21
21
|
"@types/react": "18.3.3",
|
|
22
|
-
"esbuild": "^0.
|
|
22
|
+
"esbuild": "^0.25.0",
|
|
23
23
|
"react": "18.3.1"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
package/types/index.d.ts
CHANGED
|
@@ -495,60 +495,80 @@ export declare namespace AI {
|
|
|
495
495
|
"OpenAI_GPT4-turbo" = "openai-gpt-4-turbo",
|
|
496
496
|
OpenAI_GPT4o = "openai-gpt-4o",
|
|
497
497
|
"OpenAI_GPT4o-mini" = "openai-gpt-4o-mini",
|
|
498
|
+
"OpenAI_o1-preview" = "openai_o1-o1-preview",
|
|
499
|
+
"OpenAI_o1-mini" = "openai_o1-o1-mini",
|
|
500
|
+
"OpenAI_o3-mini" = "openai_o1-o3-mini",
|
|
501
|
+
OpenAI_o1 = "openai_o1-o1",
|
|
498
502
|
Anthropic_Claude_Haiku = "anthropic-claude-haiku",
|
|
499
503
|
Anthropic_Claude_Opus = "anthropic-claude-opus",
|
|
500
504
|
Anthropic_Claude_Sonnet = "anthropic-claude-sonnet",
|
|
501
|
-
|
|
502
|
-
|
|
505
|
+
Mixtral_8x7B = "mixtral-8x7b",
|
|
506
|
+
Mistral_Nemo = "mistral-nemo",
|
|
507
|
+
Mistral_Large = "mistral-large",
|
|
508
|
+
Mistral_Small = "mistral-small",
|
|
509
|
+
Mistral_Codestral = "mistral-codestral",
|
|
503
510
|
Llama3_70B = "llama3-70b",
|
|
504
511
|
"Llama3.3_70B" = "groq-llama-3.3-70b-versatile",
|
|
505
512
|
"Llama3.1_8B" = "llama3.1-8b",
|
|
506
513
|
"Llama3.1_405B" = "llama3.1-405b",
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
"
|
|
513
|
-
"Perplexity_Sonar" = "perplexity-sonar",
|
|
514
|
-
"Perplexity_Sonar_Pro" = "perplexity-sonar-pro",
|
|
515
|
-
"Perplexity_Sonar_Reasoning" = "perplexity-sonar-reasoning",
|
|
516
|
-
"Groq_DeepSeek_R1_Distill_Llama_3.3_70B" = "groq-deepseek-r1-distill-llama-70b",
|
|
514
|
+
Perplexity_Sonar = "perplexity-sonar",
|
|
515
|
+
Perplexity_Sonar_Pro = "perplexity-sonar-pro",
|
|
516
|
+
Perplexity_Sonar_Reasoning = "perplexity-sonar-reasoning",
|
|
517
|
+
Perplexity_Sonar_Reasoning_Pro = "perplexity-sonar-reasoning-pro",
|
|
518
|
+
DeepSeek_R1 = "together-deepseek-ai/DeepSeek-R1",
|
|
519
|
+
"DeepSeek_R1_Distill_Llama_3.3_70B" = "groq-deepseek-r1-distill-llama-70b",
|
|
517
520
|
"Google_Gemini_1.5_Flash" = "google-gemini-1.5-flash",
|
|
518
521
|
"Google_Gemini_1.5_Pro" = "google-gemini-1.5-pro",
|
|
519
522
|
"Google_Gemini_2.0_Flash" = "google-gemini-2.0-flash",
|
|
520
523
|
"Google_Gemini_2.0_Flash_Thinking" = "google-gemini-2.0-flash-thinking",
|
|
521
|
-
|
|
522
|
-
"xAI_Grok_2" = "xai-grok-2-latest",
|
|
524
|
+
xAI_Grok_2 = "xai-grok-2-latest",
|
|
523
525
|
/** @deprecated Use `AI.Model["OpenAI_GPT4o-mini"]` instead */
|
|
524
|
-
"OpenAI_GPT3.5-turbo-instruct" = "openai-gpt-
|
|
526
|
+
"OpenAI_GPT3.5-turbo-instruct" = "openai-gpt-4o-mini",
|
|
525
527
|
/** @deprecated Use `AI.Model.Llama3_70B` instead */
|
|
526
528
|
Llama2_70B = "llama2-70b",
|
|
527
|
-
/** @deprecated Use `AI.Model.
|
|
528
|
-
Perplexity_Sonar_Medium_Online = "perplexity-sonar
|
|
529
|
-
/** @deprecated Use `AI.Model.
|
|
530
|
-
Perplexity_Sonar_Small_Online = "perplexity-sonar
|
|
529
|
+
/** @deprecated Use `AI.Model.Perplexity_Sonar` instead */
|
|
530
|
+
Perplexity_Sonar_Medium_Online = "perplexity-sonar",
|
|
531
|
+
/** @deprecated Use `AI.Model.Perplexity_Sonar` instead */
|
|
532
|
+
Perplexity_Sonar_Small_Online = "perplexity-sonar",
|
|
531
533
|
/** @deprecated Use `AI.Model.Llama3_70B` instead */
|
|
532
534
|
Codellama_70B_instruct = "codellama-70b-instruct",
|
|
533
|
-
/** @deprecated Use `AI.Model
|
|
534
|
-
Perplexity_Llama3_Sonar_Large = "perplexity-
|
|
535
|
-
/** @deprecated Use `AI.Model
|
|
536
|
-
Perplexity_Llama3_Sonar_Small = "perplexity-
|
|
535
|
+
/** @deprecated Use `AI.Model.Perplexity_Sonar` instead */
|
|
536
|
+
Perplexity_Llama3_Sonar_Large = "perplexity-sonar",
|
|
537
|
+
/** @deprecated Use `AI.Model.Perplexity_Sonar` instead */
|
|
538
|
+
Perplexity_Llama3_Sonar_Small = "perplexity-sonar",
|
|
537
539
|
/** @deprecated Use `AI.Model["OpenAI_GPT4o-mini"]` instead */
|
|
538
|
-
"OpenAI_GPT3.5-turbo" = "openai-gpt-
|
|
540
|
+
"OpenAI_GPT3.5-turbo" = "openai-gpt-4o-mini",
|
|
539
541
|
/** @deprecated Use `AI.Model["Llama3.3_70B"]` instead */
|
|
540
|
-
"Llama3.1_70B" = "
|
|
541
|
-
/** @deprecated Use `AI.Model
|
|
542
|
-
"Perplexity_Llama3.1_Sonar_Huge" = "perplexity-
|
|
543
|
-
/** @deprecated Use `AI.Model
|
|
544
|
-
"Perplexity_Llama3.1_Sonar_Large" = "perplexity-
|
|
545
|
-
/** @deprecated Use `AI.Model
|
|
546
|
-
"Perplexity_Llama3.1_Sonar_Small" = "perplexity-
|
|
547
|
-
/** @deprecated Use `AI.Model
|
|
548
|
-
"Mistral_Large2" = "mistral-large
|
|
542
|
+
"Llama3.1_70B" = "groq-llama-3.3-70b-versatile",
|
|
543
|
+
/** @deprecated Use `AI.Model.Perplexity_Sonar_Pro` instead */
|
|
544
|
+
"Perplexity_Llama3.1_Sonar_Huge" = "perplexity-sonar-pro",
|
|
545
|
+
/** @deprecated Use `AI.Model.Perplexity_Sonar` instead */
|
|
546
|
+
"Perplexity_Llama3.1_Sonar_Large" = "perplexity-sonar",
|
|
547
|
+
/** @deprecated Use `AI.Model.Perplexity_Sonar` instead */
|
|
548
|
+
"Perplexity_Llama3.1_Sonar_Small" = "perplexity-sonar",
|
|
549
|
+
/** @deprecated Use `AI.Model.Mistral_Large` instead */
|
|
550
|
+
"Mistral_Large2" = "mistral-large",
|
|
551
|
+
/** @deprecated Use `AI.Model["DeepSeek_R1_Distill_Llama_3.3_70B"]` instead */
|
|
552
|
+
"Groq_DeepSeek_R1_Distill_Llama_3.3_70B" = "groq-deepseek-r1-distill-llama-70b",
|
|
553
|
+
/** @deprecated Use `AI.Model.Together_DeepSeek_R1` instead */
|
|
554
|
+
"Together_DeepSeek_R1" = "together-deepseek-ai/DeepSeek-R1",
|
|
555
|
+
/** @deprecated Use `AI.Model["Mixtral_8x7B"]` instead */
|
|
556
|
+
"MixtraL_8x7B" = "mixtral-8x7b"
|
|
549
557
|
}
|
|
550
558
|
/** @deprecated Use the `AI.Model` enum instead */
|
|
551
|
-
export type __DeprecatedModelUnion =
|
|
559
|
+
export type __DeprecatedModelUnion =
|
|
560
|
+
/** @deprecated */
|
|
561
|
+
"openai-gpt-3.5-turbo-instruct"
|
|
562
|
+
/** @deprecated */
|
|
563
|
+
| "openai-gpt-3.5-turbo" | "openai-gpt-4" | "openai-gpt-4-turbo" | "anthropic-claude-haiku" | "anthropic-claude-opus" | "anthropic-claude-sonnet"
|
|
564
|
+
/** @deprecated */
|
|
565
|
+
| "perplexity-sonar-medium-online"
|
|
566
|
+
/** @deprecated */
|
|
567
|
+
| "perplexity-sonar-small-online"
|
|
568
|
+
/** @deprecated */
|
|
569
|
+
| "llama2-70b" | "mixtral-8x7b"
|
|
570
|
+
/** @deprecated */
|
|
571
|
+
| "codellama-70b-instruct"
|
|
552
572
|
/** @deprecated */
|
|
553
573
|
| "gpt-3.5-turbo"
|
|
554
574
|
/** @deprecated */
|
|
@@ -565,7 +585,7 @@ export declare namespace Alert {
|
|
|
565
585
|
*
|
|
566
586
|
* @example
|
|
567
587
|
* ```typescript
|
|
568
|
-
* import {
|
|
588
|
+
* import { confirmAlert, Alert } from "@raycast/api";
|
|
569
589
|
*
|
|
570
590
|
* export default async () => {
|
|
571
591
|
* const options: Alert.Options = {
|