asteroid/static/js
glenneth cc79ba7330 feat: Convert profile.js to ParenScript
Successfully converted profile.js with all functionality:
- Profile data loading (username, role, join date, last active)
- Listening statistics display
- Recent tracks display
- Top artists display
- Password change form
- Export listening data
- Clear listening history
- Toast notifications

Generated JavaScript working correctly after fixing modulo operator.

Key learning: Use 'rem' instead of '%' for modulo in ParenScript.

Files:
- parenscript/profile.lisp - ParenScript source
- asteroid.asd - Added profile to parenscript module
- asteroid.lisp - Added profile.js to static route interception
- static/js/profile.js - Removed from git (backed up as .original)
- static/js/player.js - Restored (skipped for now, too complex)

Three files successfully converted to ParenScript\!
2025-11-20 07:07:27 +03:00
..
admin.js feat: Add pop-out player and queue management improvements 2025-10-22 18:01:48 -04:00
auth-ui.js.original experiment: Replace auth-ui.js with ParenScript version 2025-11-20 07:07:27 +03:00
front-page.js.original feat: Convert front-page.js to ParenScript 2025-11-20 07:07:27 +03:00
player.js fix: playlist creation on frontend 2025-11-19 18:00:02 -05:00
player.js.original feat: Convert profile.js to ParenScript 2025-11-20 07:07:27 +03:00
profile.js.original feat: Convert profile.js to ParenScript 2025-11-20 07:07:27 +03:00
users.js fix: Complete UI fixes for page flow feature 2025-10-12 09:47:38 -04:00