Skip to content

Commit 102f874

Browse files
committed
xref adjustments
1 parent 865a7c7 commit 102f874

File tree

19 files changed

+629
-239
lines changed

19 files changed

+629
-239
lines changed

resources/js/laravel-livewire-tables.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import stringFilter from "./partials/filters/string.js";
99
import fpf from "./partials/filters/fpf.js";
1010
import nrF from "./partials/filters/numberRange.js";
1111
import bulkactionsHelper from "./partials/core/bulkactionsHelper.min.js";
12+
import columnSelect from "./partials/core/columnSelect.js";
1213

1314
document.addEventListener('alpine:init', () => {
1415

@@ -22,5 +23,5 @@ document.addEventListener('alpine:init', () => {
2223
fpf();
2324
nrF();
2425
bulkactionsHelper();
25-
26+
columnSelect();
2627
});

resources/js/laravel-livewire-tables.min.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import stringFilter from "./partials/filters/string.js";
99
import fpf from "./partials/filters/fpf.js";
1010
import nrF from "./partials/filters/numberRange.js";
1111
import bulkactionsHelper from "./partials/core/bulkactionsHelper.min.js";
12+
import columnSelect from "./partials/core/columnSelect.js";
1213

1314
document.addEventListener('livewire:init', () => {
1415

@@ -21,4 +22,5 @@ document.addEventListener('livewire:init', () => {
2122
fpf();
2223
nrF();
2324
bulkactionsHelper();
25+
columnSelect();
2426
});
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
/*jshint esversion: 6 */
2+
3+
function columnSelect() {
4+
Alpine.data('columnSelect', (wire) => ({
5+
open: false,
6+
childElementOpen: false,
7+
updatingRoot: false,
8+
previousCols: [],
9+
selectableCols: wire.entangle('columnSelectConfig.selectableColumns'),
10+
selectableColumnCount: wire.entangle('columnSelectConfig.selectableColumnCount'),
11+
selectedCols: wire.entangle('selectedColumns'),
12+
timeout: 0,
13+
toggleAll()
14+
{
15+
this.open = false;
16+
wire.call('toggleAllColumns');
17+
},
18+
checkShouldSendUpdate()
19+
{
20+
if(this.selectedCols.length != this.previousCols.length)
21+
{
22+
return true;
23+
}
24+
25+
for (let i = 0; i < this.selectedCols.length; i++) {
26+
if (this.selectedCols[i] !== this.previousCols[i]) {
27+
return true;
28+
}
29+
}
30+
31+
return false;
32+
},
33+
sendUpdate()
34+
{
35+
if(this.checkShouldSendUpdate())
36+
{
37+
this.previousCols = this.selectedCols;
38+
this.open = false;
39+
wire.$refresh();
40+
}
41+
},
42+
init()
43+
{
44+
this.$nextTick(() => {
45+
let preCol = wire.get('selectedColumns');
46+
this.previousCols = preCol;
47+
});
48+
}
49+
50+
}));
51+
}
52+
53+
export default columnSelect;

resources/views/components/collapsed-columns/td.blade.php

Lines changed: 39 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,26 @@
55
{{
66
$attributes
77
->merge()
8-
->class([
9-
'p-3 table-cell text-center' => $isTailwind,
10-
'sm:hidden' => $isTailwind && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false)),
11-
'md:hidden' => $isTailwind && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) && ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false)),
12-
'lg:hidden' => $isTailwind && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && (($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) || ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false))),
8+
->class($isTailwind ? [
9+
'p-3 table-cell text-center',
10+
'sm:hidden' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false)),
11+
'md:hidden' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) && ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false)),
12+
'lg:hidden' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && (($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) || ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false))),
1313
14-
'tw4ph p-3 table-cell text-center' => $isTailwind4,
15-
'tw4ph sm:hidden' => $isTailwind4 && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false)),
16-
'tw4ph md:hidden' => $isTailwind4 && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) && ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false)),
17-
'tw4ph lg:hidden' => $isTailwind4 && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && (($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) || ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false))),
14+
] : [])
15+
->class($isTailwind4 ? [
16+
'tw4ph p-3 table-cell text-center',
17+
'tw4ph sm:hidden' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false)),
18+
'tw4ph md:hidden' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) && ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false)),
19+
'tw4ph lg:hidden' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && (($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) || ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false))),
1820
21+
] : [])
22+
->class($isBootstrap ? [
23+
'd-sm-none' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false)),
24+
'd-md-none' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) && ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false)),
25+
'd-lg-none' => (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && (($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) || ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false))),
1926
20-
'd-sm-none' => $isBootstrap && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false)),
21-
'd-md-none' => $isBootstrap && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && !($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) && ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false)),
22-
'd-lg-none' => $isBootstrap && (!($collapsingColumnInfo['shouldCollapseAlways'] ?? false) && (($collapsingColumnInfo['shouldCollapseOnTablet'] ?? false) || ($collapsingColumnInfo['shouldCollapseOnMobile'] ?? false))),
23-
24-
])
27+
] : [])
2528
}}
2629
:class="currentlyReorderingStatus ? 'laravel-livewire-tables-reorderingMinimised' : ''"
2730
>
@@ -37,31 +40,33 @@
3740
>
3841
<x-heroicon-o-plus-circle x-cloak x-show="!open" {{
3942
$attributes->merge($collapsingColumnInfo['buttonExpandAttributes'])
40-
->class([
41-
'h-6 w-6' => $isTailwind && ($collapsingColumnInfo['buttonExpandAttributes']['default-styling'] ?? true),
42-
'text-green-600' => $isTailwind && ($collapsingColumnInfo['buttonExpandAttributes']['default-colors'] ?? true),
43-
44-
'tw4ph h-6 w-6' => $isTailwind4 && ($collapsingColumnInfo['buttonExpandAttributes']['default-styling'] ?? true),
45-
'tw4ph text-green-600' => $isTailwind4 && ($collapsingColumnInfo['buttonExpandAttributes']['default-colors'] ?? true),
46-
47-
48-
'laravel-livewire-tables-btn-lg text-success' => $isBootstrap && ($collapsingColumnInfo['buttonExpandAttributes']['default-colors'] ?? true),
49-
])
43+
->class($isTailwind ? [
44+
'h-6 w-6' => ($collapsingColumnInfo['buttonExpandAttributes']['default-styling'] ?? true),
45+
'text-green-600' => ($collapsingColumnInfo['buttonExpandAttributes']['default-colors'] ?? true),
46+
] : [])
47+
->class($isTailwind4 ? [
48+
'tw4ph h-6 w-6' => ($collapsingColumnInfo['buttonExpandAttributes']['default-styling'] ?? true),
49+
'tw4ph text-green-600' => ($collapsingColumnInfo['buttonExpandAttributes']['default-colors'] ?? true),
50+
] : [])
51+
->class($isBootstrap ? [
52+
'laravel-livewire-tables-btn-lg text-success' => ($collapsingColumnInfo['buttonExpandAttributes']['default-colors'] ?? true),
53+
] : [])
5054
->except(['default','default-styling','default-colors'])
5155
}}
5256
/>
5357
<x-heroicon-o-minus-circle x-cloak x-show="open" {{
5458
$attributes->merge($collapsingColumnInfo['buttonCollapseAttributes'])
55-
->class([
56-
'h-6 w-6' => $isTailwind && ($collapsingColumnInfo['buttonCollapseAttributes']['default-styling'] ?? true),
57-
'text-yellow-600' => $isTailwind && ($collapsingColumnInfo['buttonCollapseAttributes']['default-colors'] ?? true),
58-
59-
'tw4ph h-6 w-6' => $isTailwind4 && ($collapsingColumnInfo['buttonCollapseAttributes']['default-styling'] ?? true),
60-
'tw4ph text-yellow-600' => $isTailwind4 && ($collapsingColumnInfo['buttonCollapseAttributes']['default-colors'] ?? true),
61-
62-
63-
'laravel-livewire-tables-btn-lg text-warning' => $isBootstrap && ($collapsingColumnInfo['buttonCollapseAttributes']['default-colors'] ?? true),
64-
])
59+
->class($isTailwind ? [
60+
'h-6 w-6' => ($collapsingColumnInfo['buttonCollapseAttributes']['default-styling'] ?? true),
61+
'text-yellow-600' => ($collapsingColumnInfo['buttonCollapseAttributes']['default-colors'] ?? true),
62+
] : [])
63+
->class($isTailwind4 ? [
64+
'tw4ph h-6 w-6' => ($collapsingColumnInfo['buttonCollapseAttributes']['default-styling'] ?? true),
65+
'tw4ph text-yellow-600' =>($collapsingColumnInfo['buttonCollapseAttributes']['default-colors'] ?? true),
66+
] : [])
67+
->class($isBootstrap ? [
68+
'laravel-livewire-tables-btn-lg text-warning' => ($collapsingColumnInfo['buttonCollapseAttributes']['default-colors'] ?? true),
69+
] : [])
6570
->except(['default','default-styling','default-colors'])
6671
}}
6772
/>

resources/views/components/collapsed-columns/th.blade.php

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,25 @@
22
@if ($collapsingColumnInfo['hasCollapsingColumns'])
33
<th scope="col" :class="{ 'laravel-livewire-tables-reorderingMinimised': ! currentlyReorderingStatus }" {{
44
$attributes->merge()
5-
->class([
6-
'table-cell dark:bg-gray-800 laravel-livewire-tables-reorderingMinimised' => $isTailwind,
7-
'sm:hidden' => $isTailwind && (!$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
8-
'md:hidden' => $isTailwind && (!$collapsingColumnInfo['shouldCollapseOnMobile'] && !$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
9-
'lg:hidden' => $isTailwind && (!$collapsingColumnInfo['shouldCollapseAlways']),
5+
->class($isTailwind ? [
6+
'table-cell dark:bg-gray-800 laravel-livewire-tables-reorderingMinimised',
7+
'sm:hidden' => (!$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
8+
'md:hidden' => (!$collapsingColumnInfo['shouldCollapseOnMobile'] && !$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
9+
'lg:hidden' => (!$collapsingColumnInfo['shouldCollapseAlways']),
10+
] : [])
11+
->class($isTailwind4 ? [
12+
'tw4ph table-cell dark:bg-gray-800 laravel-livewire-tables-reorderingMinimised',
13+
'tw4ph sm:hidden' => (!$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
14+
'tw4ph md:hidden' => (!$collapsingColumnInfo['shouldCollapseOnMobile'] && !$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
15+
'tw4ph lg:hidden' => (!$collapsingColumnInfo['shouldCollapseAlways']),
16+
] : [])
17+
->class($isBootstrap ? [
18+
'd-table-cell laravel-livewire-tables-reorderingMinimised',
19+
'd-sm-none' => (!$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
20+
'd-md-none' => (!$collapsingColumnInfo['shouldCollapseOnMobile'] && !$collapsingColumnInfo['shouldCollapseOnTablet']) && !$collapsingColumnInfo['shouldCollapseAlways'],
21+
'd-lg-none' => (!$collapsingColumnInfo['shouldCollapseAlways']),
22+
] : [])
1023
11-
'tw4ph table-cell dark:bg-gray-800 laravel-livewire-tables-reorderingMinimised' => $isTailwind4,
12-
'tw4ph sm:hidden' => $isTailwind4 && (!$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
13-
'tw4ph md:hidden' => $isTailwind4 && (!$collapsingColumnInfo['shouldCollapseOnMobile'] && !$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
14-
'tw4ph lg:hidden' => $isTailwind4 && (!$collapsingColumnInfo['shouldCollapseAlways']),
15-
16-
'd-table-cell laravel-livewire-tables-reorderingMinimised' => $isBootstrap,
17-
'd-sm-none' => $isBootstrap && (!$collapsingColumnInfo['shouldCollapseOnTablet'] && !$collapsingColumnInfo['shouldCollapseAlways']),
18-
'd-md-none' => $isBootstrap && (!$collapsingColumnInfo['shouldCollapseOnMobile'] && !$collapsingColumnInfo['shouldCollapseOnTablet']) && !$collapsingColumnInfo['shouldCollapseAlways'],
19-
'd-lg-none' => $isBootstrap && (!$collapsingColumnInfo['shouldCollapseAlways']),
20-
])
2124
}}
2225
></th>
2326
@endif

resources/views/components/collapsed-columns/tr.blade.php

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,16 @@
99
'wire:key' => $dataTableFingerprint.'-row-'.$rowPk.'-collapsed-contents',
1010
])
1111
->merge($tableRowDetails['attributes'])
12-
->class([
13-
'hidden rappasoft-striped-row' => $isTailwind && ($tableRowDetails['attributes']['default'] ?? true),
14-
'tw4ph hidden rappasoft-striped-row' => $isTailwind4 && ($tableRowDetails['attributes']['default'] ?? true),
15-
16-
'd-none bg-light rappasoft-striped-row' => $isBootstrap && ($rowIndex % 2 === 0 && ($tableRowDetails['attributes']['default'] ?? true)),
17-
'd-none bg-white rappasoft-striped-row' => $isBootstrap && ($rowIndex % 2 !== 0 && ($tableRowDetails['attributes']['default'] ?? true)),
18-
])
12+
->class($isTailwind ? [
13+
'hidden rappasoft-striped-row' => ($tableRowDetails['attributes']['default'] ?? true),
14+
] : [])
15+
->class($isTailwind4 ? [
16+
'tw4ph hidden rappasoft-striped-row' => ($tableRowDetails['attributes']['default'] ?? true),
17+
] : [])
18+
->class($isBootstrap ? [
19+
'd-none bg-light rappasoft-striped-row' => ($rowIndex % 2 === 0 && ($tableRowDetails['attributes']['default'] ?? true)),
20+
'd-none bg-white rappasoft-striped-row' => ($rowIndex % 2 !== 0 && ($tableRowDetails['attributes']['default'] ?? true)),
21+
] : [])
1922
->except(['default','default-styling','default-colors'])
2023
}}
2124
>

resources/views/components/table/table.blade.php

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,20 @@
22
@props(['bulkActionsTdAttributes','bulkActionsTdCheckboxAttributes'])
33

44
<table {{ $attributes->merge($coreTableAttributes['table'])
5-
->class([
6-
'rappasoft-livewire-table-new' => $isTailwind,
7-
'divide-gray-200 dark:divide-none' => $isTailwind && ($coreTableAttributes['table']['default-colors'] ?? ($coreTableAttributes['table']['default'] ?? true)),
8-
'min-w-full divide-y' => $isTailwind && ($coreTableAttributes['table']['default-styling'] ?? ($coreTableAttributes['table']['default'] ?? true)),
9-
10-
'tw4ph rappasoft-livewire-table-new' => $isTailwind4,
11-
'tw4ph divide-gray-200 dark:divide-none' => $isTailwind4 && ($coreTableAttributes['table']['default-colors'] ?? ($coreTableAttributes['table']['default'] ?? true)),
12-
'tw4ph min-w-full divide-y' => $isTailwind4 && ($coreTableAttributes['table']['default-styling'] ?? ($coreTableAttributes['table']['default'] ?? true)),
13-
14-
'' => $isBootstrap && ($coreTableAttributes['table']['default-colors'] ?? ($coreTableAttributes['table']['default'] ?? true)),
15-
'laravel-livewire-table table' => $isBootstrap && ($coreTableAttributes['table']['default-styling'] ?? ($coreTableAttributes['table']['default'] ?? true)),
16-
])
5+
->class($isTailwind ? [
6+
'rappasoft-livewire-table-new',
7+
'divide-gray-200 dark:divide-none' => ($coreTableAttributes['table']['default-colors'] ?? ($coreTableAttributes['table']['default'] ?? true)),
8+
'min-w-full divide-y' => ($coreTableAttributes['table']['default-styling'] ?? ($coreTableAttributes['table']['default'] ?? true)),
9+
] : [])
10+
->class($isTailwind4 ? [
11+
'tw4ph rappasoft-livewire-table-new',
12+
'tw4ph divide-gray-200 dark:divide-none' => ($coreTableAttributes['table']['default-colors'] ?? ($coreTableAttributes['table']['default'] ?? true)),
13+
'tw4ph min-w-full divide-y' => ($coreTableAttributes['table']['default-styling'] ?? ($coreTableAttributes['table']['default'] ?? true)),
14+
] : [])
15+
->class($isBootstrap ? [
16+
'' => ($coreTableAttributes['table']['default-colors'] ?? ($coreTableAttributes['table']['default'] ?? true)),
17+
'laravel-livewire-table table' => ($coreTableAttributes['table']['default-styling'] ?? ($coreTableAttributes['table']['default'] ?? true)),
18+
] : [])
1719
->except(['default','default-styling','default-colors', 'wire:key']) }}
1820
wire:key="bookingitemstable-table-{{ rand(5828,458218) }}"
1921
>

0 commit comments

Comments
 (0)