Skip to content

feat: group publishing by label - #72

Merged
BIA3IA merged 8 commits into
mainfrom
publish_labeled_groups
Sep 6, 2026
Merged

feat: group publishing by label#72
BIA3IA merged 8 commits into
mainfrom
publish_labeled_groups

Conversation

@BIA3IA

@BIA3IA BIA3IA commented Sep 4, 2026

Copy link
Copy Markdown
Contributor
  • Added PublishTagGroupsDialog to manage the visibility and untagging of groups with a specific tag.
  • Created TagGroupsPage to display groups associated with a flat tag, allowing for search and management.
  • Introduced useLabelGroupRows hook to streamline the retrieval of group rows based on labels.
  • Enhanced CreateEditGroupDialog to include an option to hide groups until published.
  • Updated CombinedGroupsTable to handle visibility toggling for WhatsApp groups.
  • Implemented setWhatsappGroupVisibility function to manage group visibility state.
  • Added UI elements for displaying visibility status and handling user interactions.
  • Updated routing to include a dedicated page for managing tags.

- Added PublishTagGroupsDialog to manage the visibility and untagging of groups with a specific tag.
- Created TagGroupsPage to display groups associated with a flat tag, allowing for search and management.
- Introduced useLabelGroupRows hook to streamline the retrieval of group rows based on labels.
- Enhanced CreateEditGroupDialog to include an option to hide groups until published.
- Updated CombinedGroupsTable to handle visibility toggling for WhatsApp groups.
- Implemented setWhatsappGroupVisibility function to manage group visibility state.
- Added UI elements for displaying visibility status and handling user interactions.
- Updated routing to include a dedicated page for managing tags.
@coderabbitai

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: 7a78dca6-cf86-41ed-bf1d-aa3b21e38a11

🚥 Pre-merge checks | ✅ 3 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 27.78% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 36 functions across 23 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly summarizes the pull request's primary change: managing group publishing by label.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@BIA3IA BIA3IA added the status: blocked Work cannot proceed until another issue is resolved label Sep 6, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The new tag route’s category redirect can generate invalid/unencoded URLs for labels containing spaces or other characters, which can break navigation.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

This PR introduces a “publication” workflow built around reserved release- labels, adding a dedicated tag page to manage/publish those batches and extending group visibility controls (including WhatsApp) to support “hide until published” and later publishing.

Changes:

  • Added /dashboard/web/tags/$tag route + TagGroupsPage to browse/manage groups for a flat tag (including release/publication tags).
  • Implemented publishing flow for release tags (unhide + untag in bulk) and refined label creation/rename validation to reserve release-.
  • Added shared optimistic visibility-toggle hook and extended WhatsApp UI/server functions to support hide/visibility toggling and “hide until published” on creation.
File summaries
File Description
src/routeTree.gen.ts Adds generated route entries for the new /dashboard/web/tags/$tag page.
src/routes/dashboard/web/tags/$tag.tsx New tag route with redirect for categories and loader for tag page data.
src/hooks/use-group-visibility-toggle.ts New shared optimistic visibility toggle hook (mutation + rollback + refresh).
src/features/whatsapp/whatsapp-groups-page.tsx Adds WhatsApp visibility toggle UI and surfaces mutation/refresh errors.
src/features/whatsapp/whatsapp-group-fields.tsx Adds optional “Hide until published” checkbox field for create flows.
src/features/whatsapp/groups.functions.ts Adds hide support on create/edit and introduces setWhatsappGroupVisibility server fn.
src/features/whatsapp/create-edit-group-dialog.tsx Adds “hide until published” option when creating a WhatsApp group.
src/features/telegram/groups-table.tsx Refactors Telegram visibility toggle to use shared hook.
src/features/groups-by-label/use-label-group-rows.ts New shared hook to derive combined rows for exact-label pages (category/tag).
src/features/groups-by-label/tag-groups-page.tsx New flat-tag page UI (search + publish dialog + combined table).
src/features/groups-by-label/publish-tag-groups-dialog.tsx New “publish release label” dialog (unhide + untag batch).
src/features/groups-by-label/groups-by-label-page.tsx Refactors row derivation to useLabelGroupRows; passes allLabels onward.
src/features/groups-by-label/combined-groups-table.tsx Adds WhatsApp visibility toggle and refactors Telegram toggle to shared hook.
src/features/groups-by-label/add-group-to-label-dialog.tsx Adds multi-tag selection + optional creation flow gating + “hide on create”.
src/features/group-labels/rename-label-dialog.tsx Prevents renaming publication labels / into the reserved release- prefix.
src/features/group-labels/label-tree.ts Introduces RELEASE_LABEL_PREFIX, hasReleaseLabelPrefix, and isReleaseLabel.
src/features/group-labels/label-tree-selector.tsx Splits “Attributes” vs “Publications” and supports tagsOnly mode.
src/features/group-labels/group-labels.validation.ts Reserves release- from normal labels; adds createReleaseLabelInput; blocks renaming publications.
src/features/group-labels/group-labels.functions.ts Adds createReleaseLabel server function.
src/features/group-labels/group-labels-page.tsx Updates labels management UI to separate Attributes vs Publications; links to tag pages.
src/features/group-labels/group-label-card.tsx Adds optional link target for label badge.
src/features/group-labels/add-tag-dialog.tsx Adds publication creation mode (creates release labels from a name).
src/components/ui/checkbox.tsx New shared Checkbox UI component used by “hide until published”.
Review details
  • Files reviewed: 23/23 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/routes/dashboard/web/tags/$tag.tsx Outdated
@BIA3IA BIA3IA removed the status: blocked Work cannot proceed until another issue is resolved label Sep 6, 2026
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@BIA3IA
BIA3IA merged commit 7e7d127 into main Sep 6, 2026
2 checks passed
@BIA3IA
BIA3IA deleted the publish_labeled_groups branch September 6, 2026 23:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants