-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
feat(Dealabs): add activity #10324
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
feat(Dealabs): add activity #10324
Conversation
Adds a new presence for Dealabs, the largest French community for sharing deals and coupons. **Features:** - 🛍️ **Browsing Deals:** Displays the deal title, price, and "temperature" (votes). - 💬 **Forum:** Shows current discussion topic or forum category. - 🏷️ **Merchants & Groups:** Updates when browsing specific merchants or categories. - 🌍 **Localization:** Fully translated in English and French. - ⚙️ **Settings:** - Privacy Mode (hides specific details globally). - Options to hide prices, images, or titles individually. **Technical details:** - Uses the new `getStrings` object mapping structure. - Validated with both privacy settings and various page types.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ESLint found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
Updates the logo to meet the 512x512px requirement and applies ESLint fixes (quotes, semicolons) to match project style.
- Revert accidental changes to `cli/src/commands/checkDns.ts` - Implement native localization system using `Dealabs.json` - Update thumbnail to a landscape promotional image in `metadata.json` - Use `ActivityType` enum in `presence.ts` instead of hardcoded value
b38666b to
9f60b1f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a new presence for Dealabs, a French community platform for sharing deals and coupons. The implementation provides rich activity tracking across different sections of the website including deals, forums, merchants, and categories, with comprehensive privacy settings.
Key Changes:
- Implements a modular resolver pattern for different page types (deals, discussions, merchants, groups, listings)
- Adds granular privacy controls allowing users to hide specific elements
- Provides English translations for user-facing strings
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 20 comments.
Show a summary per file
| File | Description |
|---|---|
| websites/D/Dealabs/presence.ts | Main presence logic orchestrating resolvers and handling activity updates |
| websites/D/Dealabs/util/interfaces.ts | TypeScript interfaces for settings, translations, and resolver pattern |
| websites/D/Dealabs/util/index.ts | Utility functions for slug formatting and content selection |
| websites/D/Dealabs/sources/deal.ts | Resolver for individual deal pages with price and temperature display |
| websites/D/Dealabs/sources/discussion.ts | Resolver for forum discussions |
| websites/D/Dealabs/sources/group.ts | Resolver for category/group pages |
| websites/D/Dealabs/sources/listing.ts | Resolver for feed pages (new, hot, top deals) |
| websites/D/Dealabs/sources/merchant.ts | Resolver for merchant promo code pages |
| websites/D/Dealabs/metadata.json | Service configuration with French-language settings |
| websites/D/Dealabs/Dealabs.json | English translation strings for presence messages |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Description
This PR adds a new presence for Dealabs, the largest French community for sharing deals and coupons.
✨ Features:
⚙️ Settings:
Technical details:
getStringsmapping for cleaner translation handling.Acknowledgements
npm run lintScreenshots
Proof showing the creation/modification is working as expected