22
33document . addEventListener ( 'alpine:init' , ( ) => {
44
5- Alpine . data ( 'laravellivewiretable' , ( wire , showBulkActionsAlpine , tableID , primaryKeyName ) => ( {
5+ Alpine . data ( 'laravellivewiretable' , ( wire ) => ( {
6+ tableId : '' ,
7+ showBulkActionsAlpine : false ,
8+ primaryKeyName : '' ,
69 shouldBeDisplayed : wire . entangle ( 'shouldBeDisplayed' ) ,
710 tableName : wire . entangle ( 'tableName' ) ,
811 dataTableFingerprint : wire . entangle ( 'dataTableFingerprint' ) ,
@@ -70,7 +73,7 @@ document.addEventListener('alpine:init', () => {
7073 element . classList . remove ( "laravel-livewire-table-dragging" ) ;
7174 let originalPosition = element . rowIndex ;
7275 let newPosition = target . rowIndex ;
73- let table = document . getElementById ( tableID ) ;
76+ let table = document . getElementById ( this . tableId ) ;
7477 let loopStart = originalPosition ;
7578 if ( event . offsetY > ( target . getBoundingClientRect ( ) . height / 2 ) ) {
7679 parent . insertBefore ( element , target . nextSibling ) ;
@@ -126,17 +129,17 @@ document.addEventListener('alpine:init', () => {
126129
127130 } ,
128131 updateOrderedItems ( ) {
129- let table = document . getElementById ( tableID ) ;
132+ let table = document . getElementById ( this . tableId ) ;
130133 let orderedRows = [ ] ;
131134 for ( let i = 1 , row ; row = table . rows [ i ] ; i ++ ) {
132- orderedRows . push ( { [ primaryKeyName ] : row . getAttribute ( 'rowpk' ) , [ this . defaultReorderColumn ] : i } ) ;
135+ orderedRows . push ( { [ this . primaryKeyName ] : row . getAttribute ( 'rowpk' ) , [ this . defaultReorderColumn ] : i } ) ;
133136 }
134137 wire . storeReorder ( orderedRows ) ;
135138 } ,
136139 setupEvenOddClasses ( ) {
137140 if ( this . evenNotInOdd . length === undefined || this . evenNotInOdd . length == 0 || this . oddNotInEven . length === undefined || this . oddNotInEven . length == 0 )
138141 {
139- let tbody = document . getElementById ( tableID ) . getElementsByTagName ( 'tbody' ) [ 0 ] ;
142+ let tbody = document . getElementById ( this . tableId ) . getElementsByTagName ( 'tbody' ) [ 0 ] ;
140143 let evenRowClassArray = [ ] ;
141144 let oddRowClassArray = [ ] ;
142145
@@ -152,7 +155,7 @@ document.addEventListener('alpine:init', () => {
152155 }
153156 } ,
154157 toggleSelectAll ( ) {
155- if ( ! showBulkActionsAlpine ) {
158+ if ( ! this . showBulkActionsAlpine ) {
156159 return ;
157160 }
158161
@@ -171,14 +174,14 @@ document.addEventListener('alpine:init', () => {
171174 }
172175 } ,
173176 setAllItemsSelected ( ) {
174- if ( ! showBulkActionsAlpine ) {
177+ if ( ! this . showBulkActionsAlpine ) {
175178 return ;
176179 }
177180 this . selectAllStatus = true ;
178181 this . selectAllOnPage ( ) ;
179182 } ,
180183 setAllSelected ( ) {
181- if ( ! showBulkActionsAlpine ) {
184+ if ( ! this . showBulkActionsAlpine ) {
182185 return ;
183186 }
184187 if ( this . delaySelectAll )
@@ -192,14 +195,14 @@ document.addEventListener('alpine:init', () => {
192195 }
193196 } ,
194197 clearSelected ( ) {
195- if ( ! showBulkActionsAlpine ) {
198+ if ( ! this . showBulkActionsAlpine ) {
196199 return ;
197200 }
198201 this . selectAllStatus = false ;
199202 wire . clearSelected ( ) ;
200203 } ,
201204 selectAllOnPage ( ) {
202- if ( ! showBulkActionsAlpine ) {
205+ if ( ! this . showBulkActionsAlpine ) {
203206 return ;
204207 }
205208
@@ -210,14 +213,32 @@ document.addEventListener('alpine:init', () => {
210213 }
211214 this . selectedItems = [ ...new Set ( tempSelectedItems ) ] ;
212215 } ,
213- showTable ( eventTableName = '' , eventTableFingerpint = '' )
216+ setTableId ( tableId )
214217 {
215- if ( ( eventTableName != '' && eventTableName === this . tableName ) || ( eventTableFingerprint != '' && eventTableFingerpint === this . dataTableFingerprint ) ) {
218+ this . tableId = tableId ;
219+ } ,
220+ setAlpineBulkActions ( showBulkActionsAlpine )
221+ {
222+ this . showBulkActionsAlpine = showBulkActionsAlpine ;
223+ } ,
224+ setPrimaryKeyName ( primaryKeyName )
225+ {
226+ this . primaryKeyName = primaryKeyName ;
227+ } ,
228+ showTable ( event )
229+ {
230+ let eventTableName = event . detail . tableName ?? '' ;
231+ let eventTableFingerprint = event . detail . tableFingerpint ?? '' ;
232+
233+ if ( ( ( eventTableName ?? '' ) != '' && eventTableName === this . tableName ) || ( eventTableFingerprint != '' && eventTableFingerpint === this . dataTableFingerprint ) ) {
216234 this . shouldBeDisplayed = true ;
217235 }
218236 } ,
219- hideTable ( eventTableName = '' , eventTableFingerpint = '' )
237+ hideTable ( event )
220238 {
239+ let eventTableName = event . detail . tableName ?? '' ;
240+ let eventTableFingerprint = event . detail . tableFingerpint ?? '' ;
241+
221242 if ( ( eventTableName != '' && eventTableName === this . tableName ) || ( eventTableFingerprint != '' && eventTableFingerpint === this . dataTableFingerprint ) ) {
222243 this . shouldBeDisplayed = false ;
223244 }
0 commit comments