From f8cc8816a898514a558667a2938f6255363b2ed7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Falc=C3=B3n?= Date: Thu, 4 Jun 2026 13:44:57 +0200 Subject: [PATCH] feat: enable category tree for all users, remove flag (#488) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Removes the `CategoryTree` Pennant feature flag so the parent/child category tree UI is active for all existing and new users. ## Changes - Delete `app/Features/CategoryTree.php` (flag resolved `false`). - `CategoryController` — drop `Feature`/`CategoryTreeFeature` imports and the `categoryTreeEnabled` Inertia prop. - `parent-category-field.tsx` — remove the `usePage` flag read and `if (!enabled) return null` gate; the parent field now always renders. ## Testing - `vendor/bin/pint --dirty` — pass - `bun run lint` — clean (1 pre-existing unrelated warning in `chart.tsx`) - `php artisan test tests/Feature/Settings/CategoryTreeTest.php` — 11 passed - `php artisan test tests/Feature/Settings/CategoryTest.php` — 32 passed --- app/Features/CategoryTree.php | 23 ------------------- .../Settings/CategoryController.php | 3 --- .../categories/parent-category-field.tsx | 9 -------- 3 files changed, 35 deletions(-) delete mode 100644 app/Features/CategoryTree.php diff --git a/app/Features/CategoryTree.php b/app/Features/CategoryTree.php deleted file mode 100644 index 3c465838..00000000 --- a/app/Features/CategoryTree.php +++ /dev/null @@ -1,23 +0,0 @@ - $categories, - 'categoryTreeEnabled' => Feature::for(auth()->user())->active(CategoryTreeFeature::class), ]); } diff --git a/resources/js/components/categories/parent-category-field.tsx b/resources/js/components/categories/parent-category-field.tsx index 6186bc40..954bef91 100644 --- a/resources/js/components/categories/parent-category-field.tsx +++ b/resources/js/components/categories/parent-category-field.tsx @@ -5,7 +5,6 @@ import { getDescendantIds } from '@/lib/category-tree'; import { type Category } from '@/types/category'; import { UUID } from '@/types/uuid'; import { __ } from '@/utils/i18n'; -import { usePage } from '@inertiajs/react'; import { useMemo } from 'react'; interface ParentCategoryFieldProps { @@ -24,10 +23,6 @@ export function ParentCategoryField({ excludeId, error, }: ParentCategoryFieldProps) { - const enabled = - usePage<{ categoryTreeEnabled?: boolean }>().props - .categoryTreeEnabled ?? false; - const byId = useMemo( () => new Map(categories.map((c) => [c.id, c])), [categories], @@ -59,10 +54,6 @@ export function ParentCategoryField({ ); }, [categories, excludeId, byId]); - if (!enabled) { - return null; - } - return (