Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 1 addition & 0 deletions absolidix/embed/embed.meta.tree
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
deploy \optimade/cifplayer/absolidix/logo/logo.svg
20 changes: 20 additions & 0 deletions absolidix/embed/embed.view.css.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
namespace $.$$ {

$mol_style_define( $optimade_cifplayer_absolidix_embed, {

height: '4rem',
width: '4rem',
zIndex: 1,

Open_popup: {
padding: $mol_gap.block,
},

Logo: {
height: '100%',
width: '100%',
},

} )

}
7 changes: 7 additions & 0 deletions absolidix/embed/embed.view.tree
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
$optimade_cifplayer_absolidix_embed $mol_view
sub /
<= Open_popup $mol_button_minor
sub /
<= Logo $mol_image
uri \optimade/cifplayer/absolidix/logo/logo.svg
click? <=> open_popup? null
20 changes: 20 additions & 0 deletions absolidix/embed/embed.view.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
namespace $.$$ {
export class $optimade_cifplayer_absolidix_embed extends $.$optimade_cifplayer_absolidix_embed {

open_popup( next?: any ) {

const popup = window.open( '/popup.html', 'transferPopup', 'width=400,height=300' )
window.addEventListener( 'message', ( event ) => {
if( event.origin === window.location.origin ) {
if( event.data.status === 'success' ) {
console.log( 'Token transfer successful' )
} else {
console.log( 'Token transfer failed' )
}
}
} )
Comment on lines +7 to +15
Copy link

@bito-code-review bito-code-review bot Jun 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Memory leak from unremoved event listener

Memory leak: Event listener is never removed, causing accumulation with each open_popup() call. Add cleanup: store listener reference and remove it when popup closes or communication completes.

Code suggestion
Check the AI-generated fix before applying
Suggested change
window.addEventListener( 'message', ( event ) => {
if( event.origin === window.location.origin ) {
if( event.data.status === 'success' ) {
console.log( 'Token transfer successful' )
} else {
console.log( 'Token transfer failed' )
}
}
} )
const messageHandler = ( event ) => {
if( event.origin === window.location.origin ) {
if( event.data.status === 'success' ) {
console.log( 'Token transfer successful' )
window.removeEventListener( 'message', messageHandler )
} else {
console.log( 'Token transfer failed' )
window.removeEventListener( 'message', messageHandler )
}
}
}
window.addEventListener( 'message', messageHandler )
Review Rule
Bito created the rule Always remove event listeners when they are no longer needed for repo: tilde-lab/cifplayer, language: TypeScript. Bito will avoid suggestions that match this rule. You can manage review rules here.
Code Review Run #6a8864

Should Bito avoid suggestions like this for future reviews? (Manage Rules)

  • Yes, avoid them

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're stupid robot 😄

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤣🤣🤣


}

}
}
1 change: 1 addition & 0 deletions absolidix/logo/logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions absolidix/popup/popup.view.tree
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
$optimade_cifplayer_absolidix_popup $mol_view
sub /
<= Login $mol_button_major
click? <=> login? null
14 changes: 14 additions & 0 deletions absolidix/popup/popup.view.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
namespace $.$$ {
export class $optimade_cifplayer_absolidix_popup extends $.$optimade_cifplayer_absolidix_popup {

login() {
try {
//auth
window.opener.postMessage( { status: 'success' }, window.location.origin )
} catch( error ) {
window.opener.postMessage( { status: 'failed', error: '' }, window.location.origin )
}
}

}
}
6 changes: 6 additions & 0 deletions player/player.web.view.css.ts
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,12 @@ namespace $.$$ {
zIndex: 1,
},

Absolidix: {
position: 'absolute',
bottom: 0,
right: 0,
},

Switch_overlay: {
justify: {
content: 'center'
Expand Down
1 change: 1 addition & 0 deletions player/player.web.view.tree
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ $optimade_cifplayer_player $mol_view
\
\display none
S \elements
<= Absolidix $optimade_cifplayer_absolidix_embed
^ message_visible /
<= Error_card $mol_card
title <= error \
Expand Down
Loading