refactor: migrate to modular tool-based architecture

- Implement tool registry system with individual tool modules
- Reorganize transformers into categorized source modules
- Remove emojiLibrary.js, consolidate into EmojiUtils and emojiData
- Fix mobile close button and tooltip functionality
- Add build system for transforms and emoji data
- Migrate from Python backend to pure JavaScript
- Add comprehensive documentation and testing
- Improve code organization and maintainability
- Ignore generated files (transforms-bundle.js, emojiData.js)
This commit is contained in:
Dustin Farley
2025-12-02 20:26:32 -08:00
parent 105084437a
commit dc10a90851
146 changed files with 12712 additions and 8171 deletions
+37
View File
@@ -0,0 +1,37 @@
window.NotificationUtils = {
showNotification(message, type = 'success', iconClass = null) {
const existing = document.querySelector('.copy-notification');
if (existing) {
existing.remove();
}
const notification = document.createElement('div');
notification.className = `copy-notification ${type || 'success'}`;
if (iconClass) {
const icon = document.createElement('i');
icon.className = iconClass;
notification.appendChild(icon);
}
const text = document.createElement('span');
text.textContent = message;
notification.appendChild(text);
document.body.appendChild(notification);
setTimeout(() => {
notification.classList.add('fade-out');
setTimeout(() => {
if (notification.parentNode) {
notification.parentNode.removeChild(notification);
}
}, 300);
}, 3000);
},
showCopiedPopup() {
this.showNotification('Copied!', 'success', 'fas fa-check');
}
};