diff --git a/resources/js/components/collections/View.vue b/resources/js/components/collections/View.vue index 4d9c4740318..63424cc3794 100644 --- a/resources/js/components/collections/View.vue +++ b/resources/js/components/collections/View.vue @@ -1,7 +1,6 @@ - diff --git a/resources/js/components/structures/PageTree.vue b/resources/js/components/structures/PageTree.vue index 7c0f05ff8ec..b222259b3d2 100644 --- a/resources/js/components/structures/PageTree.vue +++ b/resources/js/components/structures/PageTree.vue @@ -53,6 +53,14 @@ @@ -71,9 +79,12 @@ import * as th from 'tree-helper'; import {DraggableTree} from 'vue-draggable-nested-tree/dist/vue-draggable-nested-tree'; import TreeBranch from './Branch.vue'; +import Listing from '../Listing.vue'; export default { + mixins: [Listing], + components: { DraggableTree, TreeBranch, diff --git a/src/Structures/TreeBuilder.php b/src/Structures/TreeBuilder.php index fd73c36b394..0e997f8a191 100644 --- a/src/Structures/TreeBuilder.php +++ b/src/Structures/TreeBuilder.php @@ -3,6 +3,7 @@ namespace Statamic\Structures; use Statamic\Contracts\Structures\Nav; +use Statamic\Facades\Action; use Statamic\Facades\Entry; use Statamic\Facades\Structure; use Statamic\Facades\User; @@ -63,6 +64,7 @@ protected function toTree($pages, $params, $depth = 1) } return [ + 'entry' => $page->entry(), 'page' => $page->selectedQueryColumns($fields), 'depth' => $depth, 'children' => $this->toTree($page->pages()->all(), $params, $depth + 1), @@ -73,13 +75,15 @@ protected function toTree($pages, $params, $depth = 1) public function buildForController($params) { $tree = $this->build($params); - return $this->transformTreeForController($tree); } protected function transformTreeForController($tree) { return collect($tree)->map(function ($item) { + /** + * @var Page $page + */ $page = $item['page']; $collection = $page->collection(); @@ -100,6 +104,7 @@ protected function transformTreeForController($tree) 'edit_url' => $collection->showUrl(), 'create_url' => $collection->createEntryUrl(), ], + 'actions' => Action::for($page->entry(), ['collection' => $collection]), 'children' => (! empty($item['children'])) ? $this->transformTreeForController($item['children']) : [], ]; })->values()->all();