Add woocommerce-quicker extension#27110
Conversation
- Added screenshots - feat: update README and CHANGELOG with new features; enhance error handling in search components - feat: integrate currency formatting in order search results - feat: add currency formatting helper and integrate into product and store components - feat: enhance store management with formatting options and loading states. Adding currency check for stores. - feat: add product search functionality with StoreSelection integration - feat: enhance customer search with role filtering - feat: WIP customer search functionality (search not working well yet) - feat: refactor WooCommerceOrders to use StoreSelection component for improved store management - fixed empty view on first store load in SearchOrders component with proper error handling - feat: add local store support with SSL verification option in StoreForm and useWooCommerce hook - feat: update store name in package-lock and improve error handling in SearchOrders component - feat: add store creation functionality and enhance empty state view in WooCommerce orders - Fixed various issues with multiple stores selection for orders search - feat: refactor store management by removing credentials handling and updating order fetching logic - feat: add store management functionality to start support for multiple stores - Created hook to manage multiple stores - feat: update extension icon and add order status filter to WooCommerce orders - refactor: optimized fetching data using useFetch hook - feat: refactor WooCommerce order fetching and add missing settings component - feat: implement settings component for WooCommerce credentials management - refactor: move setup logic to SetupStepOne component - pivot: update extension details and implement WooCommerce order fetching - first commit
|
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 the
Confidence Score: 4/5Safe to merge after fixing the CHANGELOG placeholder — no runtime bugs found in the core extension logic. One P1 finding (hardcoded changelog date) and one P2 (inconsistent null guard), neither of which affect runtime behavior. Core logic — API fetching, error handling, store CRUD, and credential validation — is correct and clean. CHANGELOG.md (hardcoded date), src/hooks/useWooCommerce.ts (minor null-guard inconsistency) Important Files Changed
Prompt To Fix All With AIFix the following 2 code review issues. Work through them one at a time, proposing concise fixes.
---
### Issue 1 of 2
extensions/woocommerce-quicker/CHANGELOG.md:3
**Hardcoded date still present after fix attempt**
The previous review flagged `2026-04-12` and the reply was "fixed in latest commit", but the current file has `2026-04-30` — still a hardcoded date rather than the `{PR_MERGE_DATE}` template placeholder. Raycast automatically substitutes this variable at merge time; a hardcoded date will never update.
```suggestion
## [Initial Version] - {PR_MERGE_DATE}
```
### Issue 2 of 2
extensions/woocommerce-quicker/src/hooks/useWooCommerce.ts:42
**Inconsistent null-guard on `store`**
Lines 25–26 defensively guard `store ?` before accessing its properties, but line 42 accesses `store.local` unconditionally. If `store` is ever falsy at runtime (even though TypeScript types it as non-null), this line throws a `TypeError` while the earlier guards would have silently recovered. Either remove the guards above (if `store` is truly always non-null) or add the same guard here.
```suggestion
const activeRequest = store?.local ? localRequest : remoteRequest;
```
Reviews (5): Last reviewed commit: "Update CHANGELOG.md and optimise images" | Re-trigger Greptile |
- chore: add comments to clarify usage of cross-fetch for custom HTTPS agent - FIx linting
|
All suggestions from greptile bot have been handled in the latest commit. |
There was a problem hiding this comment.
nitpick: you can use mock-data for screenshots to avoid blur
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. |
| @@ -0,0 +1,11 @@ | |||
| # WooCommerce Quicker Changelog | |||
|
|
|||
| ## [Initial Version] - 2026-04-30 | |||
There was a problem hiding this comment.
Hardcoded date still present after fix attempt
The previous review flagged 2026-04-12 and the reply was "fixed in latest commit", but the current file has 2026-04-30 — still a hardcoded date rather than the {PR_MERGE_DATE} template placeholder. Raycast automatically substitutes this variable at merge time; a hardcoded date will never update.
| ## [Initial Version] - 2026-04-30 | |
| ## [Initial Version] - {PR_MERGE_DATE} |
Rule Used: What: In Raycast extension changelogs, `{PR_MERGE_... (source)
Prompt To Fix With AI
This is a comment left during a code review.
Path: extensions/woocommerce-quicker/CHANGELOG.md
Line: 3
Comment:
**Hardcoded date still present after fix attempt**
The previous review flagged `2026-04-12` and the reply was "fixed in latest commit", but the current file has `2026-04-30` — still a hardcoded date rather than the `{PR_MERGE_DATE}` template placeholder. Raycast automatically substitutes this variable at merge time; a hardcoded date will never update.
```suggestion
## [Initial Version] - {PR_MERGE_DATE}
```
**Rule Used:** What: In Raycast extension changelogs, `{PR_MERGE_... ([source](https://app.greptile.com/review/custom-context?memory=799af734-ebd9-4b40-9ffd-97a70fc71c8a))
How can I resolve this? If you propose a fix, please make it concise.
Description
WooCommerce Quicker lets users quickly search their WooCommerce stores for orders, customers, and products.
Commands:
Key features:
Notes for reviewers
If you check the useStores.ts custom hook you'll see that I'm using useLocalStorage to save authentication credentials. I'm aware the guidelines mention to use the Preferences API for things like keys and authentication credentials, but I couldn't find a way to do that while supporting multiple stores and make it a good experience for the user.
In the other custom hook, useWooCommerce.ts, I import fetch from "cross-fetch" instead of using the built in fetch or raycast's useFetch, because both of them were failing when calling a local Wordpress with a self-signed SSL certificate. The easiest solution I found was to add an option to the stores that, when checked, allows the hook to use cross-fetch fetch, with a custom agent that ignores SSL errors.
The rest of the extension is just basic fetches and list results, nothing really special about it.
Screencast
Checklist
npm run buildand tested this distribution build in Raycastassetsfolder are used by the extension itselfREADMEare placed outside of themetadatafolder