Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
c29c690
:construction: Work in progress
SimonBarrettACT Feb 19, 2025
1e64a4f
:bug: fix sorting issue
SimonBarrettACT Feb 26, 2025
518105c
:bug: fix sorting issue
SimonBarrettACT Feb 26, 2025
db3ff36
add code to sort a relationship
SimonBarrettACT Feb 26, 2025
58e2b9e
:sparkles: allow for order by relationship
SimonBarrettACT Feb 26, 2025
f21bc54
:sparkles: allow for order by relationship
SimonBarrettACT Feb 26, 2025
baa1b90
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
7ea68c3
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
71637e1
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
23f71a5
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
f5d7d74
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
7c70dd6
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
a9ad26a
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
32cbe0c
:construction: Work in progress
SimonBarrettACT Mar 3, 2025
3d872cf
stop on checkbox click
SimonBarrettACT Mar 11, 2025
8f963bc
:construction: Work in progress
SimonBarrettACT Mar 11, 2025
75d4f44
:construction: Work in progress
SimonBarrettACT Mar 20, 2025
5edce29
remove unused wire:model
SimonBarrettACT Mar 26, 2025
c357373
fix disabled issue
SimonBarrettACT Mar 26, 2025
e53d565
fix disabled issue
SimonBarrettACT Mar 26, 2025
c36267a
fix colspan issue
SimonBarrettACT Mar 26, 2025
8dd363b
fix for disabled issue
SimonBarrettACT Mar 26, 2025
ad62923
hide action button if no rows selected
SimonBarrettACT Mar 26, 2025
1d3f5d5
improve wire key useage
SimonBarrettACT Apr 14, 2025
57db82d
Update DateCriteria.php
SimonBarrettACT Apr 16, 2025
6e9b36d
:construction: wip
SimonBarrettACT Apr 16, 2025
3f9d892
:construction: wip
SimonBarrettACT Apr 16, 2025
2ec4120
:construction: wip
SimonBarrettACT Apr 16, 2025
1e578c2
Add null filter
SimonBarrettACT Apr 30, 2025
c1d1cb5
Merge branch '88-add-groupby-to-report-builder' of github.com-work:AC…
SimonBarrettACT Apr 30, 2025
a1df4a4
Add null filter
SimonBarrettACT Apr 30, 2025
11a8df2
add null condition
SimonBarrettACT Apr 30, 2025
6bf807d
Merge branch '88-add-groupby-to-report-builder' of github.com-work:AC…
SimonBarrettACT Apr 30, 2025
7a93e74
add null condition
SimonBarrettACT Apr 30, 2025
3ddb6ff
add null condition
SimonBarrettACT Apr 30, 2025
7f393b3
add null condition
SimonBarrettACT Apr 30, 2025
1a2aaf1
add null condition
SimonBarrettACT Apr 30, 2025
e5126bb
:construction: Work in progress
SimonBarrettACT Jun 24, 2025
b8b61ae
Merge branch '88-add-groupby-to-report-builder' of github.com-work:AC…
SimonBarrettACT Jun 24, 2025
9770520
fix for select all
SimonBarrettACT Jun 24, 2025
9d6243a
fix for select all
SimonBarrettACT Jun 24, 2025
36d26f7
fix for select all
SimonBarrettACT Jun 25, 2025
1fe5e67
fix for select all
SimonBarrettACT Jun 26, 2025
1e91d9b
:bug: fix for null column
SimonBarrettACT Aug 29, 2025
5c1484e
Merge branch 'main' into 88-add-groupby-to-report-builder
SimonBarrettACT Nov 20, 2025
586fd40
Fix styling
SimonBarrettACT Nov 20, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
129 changes: 65 additions & 64 deletions resources/views/components/actions.blade.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<div class="flex justify-center">
<div
x-data="{
@if(count($selectedRows))
<div class="flex justify-center">
<div
x-data="{
open: false,
toggle() {
if (this.open) {
Expand All @@ -19,70 +20,70 @@
focusAfter && focusAfter.focus()
}
}"
x-on:keydown.escape.prevent.stop="close($refs.button)"
x-on:focusin.window="! $refs.panel.contains($event.target) && close()"
x-id="['dropdown-button']"
class="relative"
>
<!-- Button -->
<button
x-ref="button"
x-on:click="toggle()"
:aria-expanded="open"
:aria-controls="$id('dropdown-button')"
type="button"
class="flex items-center gap-2 bg-white text-gray-600 text-sm border border-gray-300 px-5 py-2.5 rounded-md shadow outline-none"
x-on:keydown.escape.prevent.stop="close($refs.button)"
x-on:focusin.window="! $refs.panel.contains($event.target) && close()"
x-id="['dropdown-button']"
class="relative"
>
Actions
<!-- Button -->
<button
x-ref="button"
x-on:click="toggle()"
:aria-expanded="open"
:aria-controls="$id('dropdown-button')"
type="button"
class="flex items-center gap-2 bg-white text-gray-600 text-sm border border-gray-300 px-5 py-2.5 rounded-md shadow outline-none"
>
Actions

<!-- Heroicon: chevron-down -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 text-gray-400" viewBox="0 0 20 20"
fill="currentColor">
<path fill-rule="evenodd"
d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
clip-rule="evenodd"/>
</svg>
</button>
<!-- Heroicon: chevron-down -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 text-gray-400" viewBox="0 0 20 20"
fill="currentColor">
<path fill-rule="evenodd"
d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
clip-rule="evenodd"/>
</svg>
</button>

<!-- Panel -->
<div
wire:model.live.debounce.500ms="updatePanel"
wire:key="panel"
x-ref="panel"
x-show="open"
x-transition.origin.top.left
x-on:click.outside="close($refs.button)"
:id="$id('dropdown-button')"
style="display: none;"
class="absolute right-0 mt-2 py-2 w-40 rounded-md bg-white shadow-md z-50"
>
<div class="space-y-2">
@foreach ($this->actions() as $action)
@if($action->isStandalone())
<button
wire:click="executeAction('{{ $action->key() }}')"
wire:key="action-{{ $action->key() }}"
@click="close($refs.button)"
type="button"
class="flex items-center gap-1 w-full first-of-type:rounded-t-md last-of-type:rounded-b-md px-4 py-1 text-left text-sm hover:bg-gray-50 disabled:text-gray-400 cursor-pointer disabled:cursor-not-allowed"
>
{{ $action->label() }}
</button>
@else
<button
:disabled="{{ $selectedRows && ! count($selectedRows) }}"
wire:click="executeAction('{{ $action->key() }}')"
wire:key="action-{{ $action->key() }}"
@click="close($refs.button)"
type="button"
class="flex items-center gap-1 w-full first-of-type:rounded-t-md last-of-type:rounded-b-md px-4 py-1 text-left text-sm hover:bg-gray-50 disabled:text-gray-400 cursor-pointer disabled:cursor-not-allowed"
>
{{ $action->label() }}
</button>
@endif
@endforeach
</div>
<!-- Panel -->
<div
wire:ignore
wire:key="panel-{{ count($selectedRows) }}"
x-ref="panel"
x-show="open"
x-cloak
x-transition.origin.top.left
x-on:click.outside="close($refs.button)"
:id="$id('dropdown-button')"
class="absolute right-0 mt-2 py-2 w-40 rounded-md bg-white shadow-md z-50"
>
<div class="space-y-2">
@foreach ($this->actions() as $action)
@if($action->isStandalone())
<button
wire:click="executeAction('{{ $action->key() }}')"
wire:key="action-{{ $action->key() }}"
@click="close($refs.button)"
type="button"
class="flex items-center gap-1 w-full first-of-type:rounded-t-md last-of-type:rounded-b-md px-4 py-1 text-left text-sm hover:bg-gray-50 disabled:text-gray-400 cursor-pointer disabled:cursor-not-allowed"
>
{{ $action->label() }}
</button>
@else
<button
wire:click="executeAction('{{ $action->key() }}')"
wire:key="action-{{ $action->key() }}"
@click="close($refs.button)"
type="button"
class="flex items-center gap-1 w-full first-of-type:rounded-t-md last-of-type:rounded-b-md px-4 py-1 text-left text-sm hover:bg-gray-50 disabled:text-gray-400 cursor-pointer disabled:cursor-not-allowed"
>
{{ $action->label() }}
</button>
@endif
@endforeach
</div>

</div>
</div>
</div>
</div>
@endif
18 changes: 18 additions & 0 deletions resources/views/filters/null.blade.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<div>
@if($filter->options())
<div wire:key="filter-{{ $filter->code() }}">
<label for="filter-{{ $filter->code() }}"
class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">{{ $filter->label() }}</label>
<select wire:model.live="filterValues.{{ $filter->code() }}" id="filter-{{ $filter->code() }}"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500">
<option value="">{{ $filter->prompt() }}</option>
@foreach($filter->options() as $key => $value)
<option value="{{ $key }}">{{ $value }}</option>
@endforeach
</select>
</div>
@endif
@if(! $filter->options())
<div>No options set.</div>
@endif
</div>
Loading