Add subflow extension#27478
Conversation
|
Congratulations on your new Raycast extension! 🚀 We're currently experiencing a high volume of incoming requests. As a result, the initial review may take up to 10-15 business days. Once the PR is approved and merged, the extension will be available on our Store. |
Greptile SummaryThis PR adds a new Subflow extension with two commands — a menu bar item showing upcoming subscription payments and a view command for browsing subscriptions by month. The implementation is clean overall, with proper async cancellation patterns, a 24 h disk-cached SVG icon service, and good error handling throughout. Confidence Score: 5/5Safe to merge after addressing the one P2 style suggestion; no logic or security issues found. Only P2 findings are present (deprecated extensions/subflow/src/utils/icons.ts — deprecated Important Files Changed
Prompt To Fix All With AIThis is a comment left during a code review.
Path: extensions/subflow/src/utils/icons.ts
Line: 66
Comment:
**`unescape` is deprecated — use `Buffer.from` instead**
`unescape` is deprecated in modern JS engines. Since Raycast extensions run in a Node.js environment, use `Buffer` for UTF-8-safe base64 encoding instead of the `btoa(unescape(encodeURIComponent(...)))` browser workaround.
```suggestion
const base64 = Buffer.from(svg, "utf-8").toString("base64");
```
How can I resolve this? If you propose a fix, please make it concise.Reviews (2): Last reviewed commit: "Update review comment" | Re-trigger Greptile |
0xdhrv
left a comment
There was a problem hiding this comment.
Looks good to me, approved ✅
|
Published to the Raycast Store: |
|
🎉 🎉 🎉 We've rewarded your Raycast account with some credits. You will soon be able to exchange them for some swag. |
Description
Add subflow extension to manage your subscriptions with Subflow directly from Raycast.
Screencast
Checklist
npm run buildand tested this distribution build in Raycastassetsfolder are used by the extension itselfREADMEare located outside the metadata folder if they were not generated with our metadata tool