@@ -1390,6 +1390,8 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
13901390 var alpineAttributeRegex = ( ) => new RegExp ( `^${ prefixAsString } ([^:^.]+)\\b` ) ;
13911391 function toParsedDirectives ( transformedAttributeMap , originalAttributeOverride ) {
13921392 return ( { name, value } ) => {
1393+ if ( name === value )
1394+ value = "" ;
13931395 let typeMatch = name . match ( alpineAttributeRegex ( ) ) ;
13941396 let valueMatch = name . match ( / : ( [ a - z A - Z 0 - 9 \- _ : ] + ) / ) ;
13951397 let modifiers = name . match ( / \. [ ^ . \] ] + (? = [ ^ \] ] * $ ) / g) || [ ] ;
@@ -2342,7 +2344,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
23422344 get raw ( ) {
23432345 return raw ;
23442346 } ,
2345- version : "3.15.3 " ,
2347+ version : "3.15.4 " ,
23462348 flushAndStopDeferringMutations,
23472349 dontAutoEvaluateFunctions,
23482350 disableEffectScheduling,
@@ -4476,16 +4478,27 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
44764478 let component ;
44774479 return new Proxy ( { } , {
44784480 get ( target , property ) {
4479- if ( ! component )
4480- component = closestComponent ( el ) ;
4481+ if ( ! component ) {
4482+ try {
4483+ component = closestComponent ( el ) ;
4484+ } catch ( e ) {
4485+ return ( ) => {
4486+ } ;
4487+ }
4488+ }
44814489 if ( [ "$entangle" , "entangle" ] . includes ( property ) ) {
44824490 return generateEntangleFunction ( component , cleanup2 ) ;
44834491 }
44844492 return component . $wire [ property ] ;
44854493 } ,
44864494 set ( target , property , value ) {
4487- if ( ! component )
4488- component = closestComponent ( el ) ;
4495+ if ( ! component ) {
4496+ try {
4497+ component = closestComponent ( el ) ;
4498+ } catch ( e ) {
4499+ return true ;
4500+ }
4501+ }
44894502 component . $wire [ property ] = value ;
44904503 return true ;
44914504 }
@@ -8091,7 +8104,10 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
80918104 function navigateTo ( destination , { preserveScroll = false , shouldPushToHistoryState = true } ) {
80928105 showProgressBar && showAndStartProgressBar ( ) ;
80938106 fetchHtmlOrUsePrefetchedHtml ( destination , ( html , finalDestination ) => {
8094- fireEventForOtherLibrariesToHookInto ( "alpine:navigating" ) ;
8107+ let swapCallbacks = [ ] ;
8108+ fireEventForOtherLibrariesToHookInto ( "alpine:navigating" , {
8109+ onSwap : ( callback ) => swapCallbacks . push ( callback )
8110+ } ) ;
80958111 restoreScroll && storeScrollInformationInHtmlBeforeNavigatingAway ( ) ;
80968112 cleanupAlpineElementsOnThePageThatArentInsideAPersistedElement ( ) ;
80978113 updateCurrentPageHtmlInHistoryStateForLaterBackButtonClicks ( ) ;
@@ -8112,6 +8128,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
81128128 unPackPersistedPopovers ( persistedEl ) ;
81138129 } ) ;
81148130 ! preserveScroll && restoreScrollPositionOrScrollToTop ( ) ;
8131+ swapCallbacks . forEach ( ( callback ) => callback ( ) ) ;
81158132 afterNewScriptsAreDoneLoading ( ( ) => {
81168133 andAfterAllThis ( ( ) => {
81178134 setTimeout ( ( ) => {
@@ -8148,7 +8165,10 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
81488165 if ( prevented )
81498166 return ;
81508167 storeScrollInformationInHtmlBeforeNavigatingAway ( ) ;
8151- fireEventForOtherLibrariesToHookInto ( "alpine:navigating" ) ;
8168+ let swapCallbacks = [ ] ;
8169+ fireEventForOtherLibrariesToHookInto ( "alpine:navigating" , {
8170+ onSwap : ( callback ) => swapCallbacks . push ( callback )
8171+ } ) ;
81528172 updateCurrentPageHtmlInSnapshotCacheForLaterBackButtonClicks ( currentPageUrl , currentPageKey ) ;
81538173 preventAlpineFromPickingUpDomChanges ( Alpine3 , ( andAfterAllThis ) => {
81548174 enablePersist && storePersistantElementsForLater ( ( persistedEl ) => {
@@ -8163,6 +8183,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
81638183 unPackPersistedPopovers ( persistedEl ) ;
81648184 } ) ;
81658185 restoreScrollPositionOrScrollToTop ( ) ;
8186+ swapCallbacks . forEach ( ( callback ) => callback ( ) ) ;
81668187 andAfterAllThis ( ( ) => {
81678188 autofocus && autofocusElementsWithTheAutofocusAttribute ( ) ;
81688189 nowInitializeAlpineOnTheNewPage ( Alpine3 ) ;
@@ -8265,7 +8286,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
82658286 let isInitiallyPresentInUrl = has2 ( url , name ) ;
82668287 let initialValue = isInitiallyPresentInUrl ? get3 ( url , name ) : initialSeedValue ;
82678288 let initialValueMemo = JSON . stringify ( initialValue ) ;
8268- let exceptValueMemo = [ false , null , void 0 ] . includes ( except ) ? initialSeedValue : JSON . stringify ( except ) ;
8289+ let exceptValueMemo = JSON . stringify ( except ) ;
82698290 let hasReturnedToInitialValue = ( newValue ) => JSON . stringify ( newValue ) === initialValueMemo ;
82708291 let hasReturnedToExceptValue = ( newValue ) => JSON . stringify ( newValue ) === exceptValueMemo ;
82718292 if ( alwaysShow )
@@ -9430,6 +9451,8 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
94309451 function colocateCommitsByComponent ( pools , component , foreignComponent ) {
94319452 let pool = findPoolWithComponent ( pools , component ) ;
94329453 let foreignPool = findPoolWithComponent ( pools , foreignComponent ) ;
9454+ if ( ! foreignPool )
9455+ return ;
94339456 let foreignCommit = foreignPool . findCommitByComponent ( foreignComponent ) ;
94349457 foreignPool . delete ( foreignCommit ) ;
94359458 pool . add ( foreignCommit ) ;
0 commit comments