trypost/resources/js/components
Paulo Castellano 5bb39da598 fix(permissions): enforce workspace roles across backend and UI
Viewers could mutate posts, automations and trigger AI write endpoints,
and every role saw create/manage affordances that 403'd on click.

Backend (security):
- PostPolicy update/delete now require member+ (was tenancy-only), which
  also gates the AI write endpoints that authorize('update')
- AutomationPolicy create/update/delete require member+; activate/pause
  delegate to update
- AutomationController authorizes index/store/show; AnalyticsController
  authorizes view
- Comments stay open to members incl. viewer (by design)

Frontend (UI gating via new useWorkspaceRole composable):
- Sidebar: create post / create workspace / automations / library nav
- Accounts grid: connect / disconnect / reconnect (admin+)
- Members: invite / change role / remove / cancel invite (admin+)
- Account billing tab (owner); posts index + calendar create affordances

Tests: PostPolicyTest, AutomationPolicyTest (all four roles) and an
end-to-end WorkspaceRolePermissionsTest; aligned the automation test
suites' account/workspace setup with role pivots.
2026-06-22 16:31:54 -03:00
..
accounts fix(permissions): enforce workspace roles across backend and UI 2026-06-22 16:31:54 -03:00
ai feat(ai): collapsible compact ContentStylePicker for tight panels 2026-06-18 11:50:04 -03:00
analytics Add Telegram analytics: per-post reactions (webhook) + channel subscribers 2026-06-14 11:18:40 -03:00
api-keys feat: complete i18n audit fix, toast system, UI improvements 2026-03-30 14:06:10 -03:00
assets fix(assets): always chunk uploads in GalleryBrowser 2026-05-18 20:03:52 -03:00
auth feat(auth): social-first register screen 2026-06-22 12:31:53 -03:00
automations feat(ai): collapsible compact ContentStylePicker for tight panels 2026-06-18 11:50:04 -03:00
labels feat(posts): multi-select label filter on the posts list 2026-05-14 09:57:55 -03:00
members feat(automations): implement automation features and UI enhancements 2026-05-24 09:17:19 -03:00
posts refactor(ai-templates): shared ContentStylePicker used by wizard + automation node 2026-06-17 20:11:09 -03:00
settings fix(permissions): enforce workspace roles across backend and UI 2026-06-22 16:31:54 -03:00
signatures chore: remove deprecated localization files 2026-05-03 15:23:25 -03:00
ui Structure brand voice and make generated copy platform-aware 2026-06-12 17:09:39 -03:00
AlertError.vue feat: improvements on ui 2026-01-21 18:42:37 -03:00
AppContent.vue chore: first commit 2026-01-14 22:13:44 -03:00
AppHeader.vue refactor: localize analytics metrics and overhaul UI components and dashboard layouts 2026-05-06 15:39:10 -03:00
AppShell.vue chore: first commit 2026-01-14 22:13:44 -03:00
AppSidebar.vue fix(permissions): enforce workspace roles across backend and UI 2026-06-22 16:31:54 -03:00
BrandForm.vue Structure brand voice and make generated copy platform-aware 2026-06-12 17:09:39 -03:00
Breadcrumbs.vue refactor: unify social analytics, reorganize workspace settings, and implement content validation rules 2026-05-02 12:22:42 -03:00
ChannelConfigurator.vue feat(channels): add Discord as a social channel 2026-06-16 14:44:00 -03:00
CodeEditor.vue Structure brand voice and make generated copy platform-aware 2026-06-12 17:09:39 -03:00
CommentBody.vue feat: @mentions in comments, AI Action layer + MCP tools, settings tabs 2026-05-01 20:59:03 -03:00
ConfirmDeleteModal.vue refactor: remove unused imports and dead code across frontend components and pages 2026-05-08 20:12:56 -03:00
DatePicker.vue refactor: standardize UI components, modernize localization structure, and remove legacy appearance management middleware. 2026-05-06 14:26:18 -03:00
DeleteUser.vue refactor: standardize UI components, modernize localization structure, and remove legacy appearance management middleware. 2026-05-06 14:26:18 -03:00
EmptyState.vue refactor: standardize UI components, modernize localization structure, and remove legacy appearance management middleware. 2026-05-06 14:26:18 -03:00
FontPicker.vue feat: replace legacy AI assistant with modular post content generation, review, and template management system 2026-05-03 09:36:50 -03:00
Heading.vue chore: first commit 2026-01-14 22:13:44 -03:00
HeadingSmall.vue refactor: standardize UI components, modernize localization structure, and remove legacy appearance management middleware. 2026-05-06 14:26:18 -03:00
HexColorInput.vue feat: implement workspace management and update localization strings across multiple languages 2026-05-06 16:41:27 -03:00
Icon.vue feat: improvements on ui 2026-01-21 18:42:37 -03:00
ImagePreviewDialog.vue feat: lightbox supports navigation, video, and click-outside-to-close 2026-05-08 19:16:38 -03:00
InputError.vue chore: first commit 2026-01-14 22:13:44 -03:00
JsonViewer.vue Enhance automation functionality: Introduce workflow variables and improve node validation 2026-06-11 15:47:29 -03:00
MediaDropzone.vue refactor(posts): streamline media item handling and improve type definitions 2026-05-21 19:08:46 -03:00
MentionTextarea.vue feat: @mentions in comments, AI Action layer + MCP tools, settings tabs 2026-05-01 20:59:03 -03:00
NavFooter.vue chore: first commit 2026-01-14 22:13:44 -03:00
NavMain.vue Add expression autocomplete, side-panel editor, and richer HTTP fetch 2026-06-12 11:31:58 -03:00
NavUser.vue refactor: in-page page headers, indies tabs, and post details polish 2026-05-06 16:22:55 -03:00
NotificationBell.vue feat: useWorkspaceEcho / usePostEcho composables and realtime list refresh 2026-05-07 16:02:54 -03:00
PageHeader.vue refactor: localize analytics metrics and overhaul UI components and dashboard layouts 2026-05-06 15:39:10 -03:00
PhoneMockup.vue refactor: introduce VideoPreview component and standardize media handling across post previews 2026-05-08 18:30:11 -03:00
PhotoUpload.vue feat: complete i18n audit fix, toast system, UI improvements 2026-03-30 14:06:10 -03:00
PlaceholderPattern.vue chore: first commit 2026-01-14 22:13:44 -03:00
SearchableSelect.vue feat(discord): implement channel caching and enhance UI for channel selection 2026-06-16 15:53:20 -03:00
SocialAccountsGrid.vue Polish PR: status FormRequest, sanitizer anchor guard, webhook limit, dedupe OAuth popup 2026-06-13 22:48:21 -03:00
TextLink.vue chore: first commit 2026-01-14 22:13:44 -03:00
Toast.vue feat: implement feature gating with persistent usage tracking and a reactive upgrade dialog for plan management. 2026-05-03 16:52:28 -03:00
UserInfo.vue refactor: standardize UI components, modernize localization structure, and remove legacy appearance management middleware. 2026-05-06 14:26:18 -03:00
UserMenuContent.vue feat: end-to-end PostHog tracking with reactive group metrics 2026-05-07 09:28:02 -03:00
WorkspaceSwitcher.vue refactor: code review fixes — policies, enums, data_get, tests 2026-03-31 00:40:18 -03:00