Skip to content

Commit cd1a81d

Browse files
Merge pull request #19 from CodeWithDennis/feature/add-default-open-level-option
Added `defaultOpenLevel` option
2 parents 0bff64d + d527d88 commit cd1a81d

File tree

4 files changed

+19
-2
lines changed

4 files changed

+19
-2
lines changed

resources/dist/tree.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/js/index.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ export default function tree(
1818
emptyText,
1919
expandSelected = true,
2020
grouped = true,
21+
openLevel = 0
2122
}) {
2223
return {
2324
state,
@@ -41,7 +42,8 @@ export default function tree(
4142
alwaysOpen,
4243
emptyText,
4344
expandSelected,
44-
grouped
45+
grouped,
46+
openLevel
4547
});
4648

4749
this.tree.srcElement.addEventListener('input', (e) => {

resources/views/select-tree.blade.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
emptyText: '{{ $getEmptyLabel() }}',
2929
expandSelected: '{{ $getExpandSelected() }}',
3030
grouped: '{{ $getGrouped() }}',
31+
openLevel: '{{ $getDefaultOpenLevel() }}',
3132
})"
3233
>
3334
<div x-ref="tree"></div>

src/SelectTree.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ class SelectTree extends Field
4545

4646
protected ?Closure $modifyQueryUsing;
4747

48+
protected Closure|int $defaultOpenLevel;
49+
4850
protected function setUp(): void
4951
{
5052
// Load the state from relationships using a callback function.
@@ -154,6 +156,13 @@ public function grouped(bool $grouped = true): static
154156
return $this;
155157
}
156158

159+
public function defaultOpenLevel(Closure|int $defaultOpenLevel = 0): static
160+
{
161+
$this->defaultOpenLevel = $defaultOpenLevel;
162+
163+
return $this;
164+
}
165+
157166
public function expandSelected(bool $expandSelected = true): static
158167
{
159168
$this->expandSelected = $expandSelected;
@@ -234,6 +243,11 @@ public function getEnableBranchNode(): bool
234243
return $this->evaluate($this->enableBranchNode);
235244
}
236245

246+
public function getDefaultOpenLevel(): int
247+
{
248+
return $this->evaluate($this->defaultOpenLevel);
249+
}
250+
237251
public function getEmptyLabel(): string
238252
{
239253
return $this->emptyLabel ? $this->evaluate($this->emptyLabel) : __('No results found');

0 commit comments

Comments
 (0)