"use strict"; class Dev_Attachments { static init() { if (!$(".Dev_Attachments").exists()) return; console.log('Dev_Attachments initialized'); // Handle upload button click - trigger hidden file input $('#basic-upload-btn').on('click', function () { $('#basic-upload-input').click(); }); // Handle file selection $('#basic-upload-input').on('change', e => { const file = e.target.files[0]; if (!file) return; // Update status $('#upload-status').text(file.name); // Upload the file Dev_Attachments.upload_image(file); }); } static upload_image(file) { // Show spinner on profile image only $('#spinner-profile').removeClass('d-none'); $('#thumb-profile').css('opacity', '0.3'); // Create FormData for file upload const form_data = new FormData(); form_data.append('file', file); form_data.append('site_id', '1'); form_data.append('fileable_type', 'dev_test'); form_data.append('fileable_category', 'attachment_demo'); // Upload file via AJAX $.ajax({ url: '/_upload', type: 'POST', data: form_data, processData: false, contentType: false, success: function (response) { console.log('Upload successful!'); console.log('Response:', response); console.log('File key:', response.attachment.key); // Show thumbnails container $('#thumbnails-container').removeClass('d-none'); // Generate thumbnail URLs const key = response.attachment.key; const extension = response.attachment.file_extension; $('#thumb-profile').attr('src', `/_thumbnail/${key}/cover/96/96`); $('#thumb-200').attr('src', `/_thumbnail/${key}/cover/200/200`); $('#thumb-240x180').attr('src', `/_thumbnail/${key}/cover/240/180`); // Use icon endpoint for file type icon $('#thumb-icon').attr('src', `/_icon_by_extension/${extension}?width=100&height=100`); // Set download/inline URLs $('#btn-view-inline').attr('href', `/_inline/${key}`); $('#btn-view-download').attr('href', `/_download/${key}`); // Hide spinner, restore opacity $('#spinner-profile').addClass('d-none'); $('#thumb-profile').css('opacity', '1'); // Clear file input for future uploads $('#basic-upload-input').val(''); $('#upload-status').html(` Upload complete!`); }, error: function (xhr, status, error) { var _xhr$responseJSON; console.error('Upload failed:', error); console.error('Response:', xhr.responseJSON); // Hide spinner, restore opacity $('#spinner-profile').addClass('d-none'); $('#thumb-profile').css('opacity', '1'); // Clear file input $('#basic-upload-input').val(''); $('#upload-status').html(` Upload failed`); // Show error to user alert('Upload failed: ' + (((_xhr$responseJSON = xhr.responseJSON) === null || _xhr$responseJSON === void 0 ? void 0 : _xhr$responseJSON.error) || error)); } }); } static on_app_ready() { Dev_Attachments.init(); } // static on_jqhtml_ready() { // // Called after all JQHTML components have loaded and rendered // // Use this if you need to interact with JQHTML components // // Otherwise, use on_app_ready() for most initialization // } } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZXZfQXR0YWNobWVudHMiLCJpbml0IiwiJCIsImV4aXN0cyIsImNvbnNvbGUiLCJsb2ciLCJvbiIsImNsaWNrIiwiZSIsImZpbGUiLCJ0YXJnZXQiLCJmaWxlcyIsInRleHQiLCJuYW1lIiwidXBsb2FkX2ltYWdlIiwicmVtb3ZlQ2xhc3MiLCJjc3MiLCJmb3JtX2RhdGEiLCJGb3JtRGF0YSIsImFwcGVuZCIsImFqYXgiLCJ1cmwiLCJ0eXBlIiwiZGF0YSIsInByb2Nlc3NEYXRhIiwiY29udGVudFR5cGUiLCJzdWNjZXNzIiwicmVzcG9uc2UiLCJhdHRhY2htZW50Iiwia2V5IiwiZXh0ZW5zaW9uIiwiZmlsZV9leHRlbnNpb24iLCJhdHRyIiwiYWRkQ2xhc3MiLCJ2YWwiLCJodG1sIiwiZXJyb3IiLCJ4aHIiLCJzdGF0dXMiLCJfeGhyJHJlc3BvbnNlSlNPTiIsInJlc3BvbnNlSlNPTiIsImFsZXJ0Iiwib25fYXBwX3JlYWR5Il0sInNvdXJjZXMiOlsicnN4L2FwcC9kZXYvYXR0YWNobWVudHMvZGV2X2F0dGFjaG1lbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNsYXNzIERldl9BdHRhY2htZW50cyB7XG4gICAgc3RhdGljIGluaXQoKSB7XG4gICAgICAgIGlmICghJChcIi5EZXZfQXR0YWNobWVudHNcIikuZXhpc3RzKCkpIHJldHVybjtcblxuICAgICAgICBjb25zb2xlLmxvZygnRGV2X0F0dGFjaG1lbnRzIGluaXRpYWxpemVkJyk7XG5cbiAgICAgICAgLy8gSGFuZGxlIHVwbG9hZCBidXR0b24gY2xpY2sgLSB0cmlnZ2VyIGhpZGRlbiBmaWxlIGlucHV0XG4gICAgICAgICQoJyNiYXNpYy11cGxvYWQtYnRuJykub24oJ2NsaWNrJywgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAkKCcjYmFzaWMtdXBsb2FkLWlucHV0JykuY2xpY2soKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gSGFuZGxlIGZpbGUgc2VsZWN0aW9uXG4gICAgICAgICQoJyNiYXNpYy11cGxvYWQtaW5wdXQnKS5vbignY2hhbmdlJywgKGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBlLnRhcmdldC5maWxlc1swXTtcbiAgICAgICAgICAgIGlmICghZmlsZSkgcmV0dXJuO1xuXG4gICAgICAgICAgICAvLyBVcGRhdGUgc3RhdHVzXG4gICAgICAgICAgICAkKCcjdXBsb2FkLXN0YXR1cycpLnRleHQoZmlsZS5uYW1lKTtcblxuICAgICAgICAgICAgLy8gVXBsb2FkIHRoZSBmaWxlXG4gICAgICAgICAgICBEZXZfQXR0YWNobWVudHMudXBsb2FkX2ltYWdlKGZpbGUpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgdXBsb2FkX2ltYWdlKGZpbGUpIHtcbiAgICAgICAgLy8gU2hvdyBzcGlubmVyIG9uIHByb2ZpbGUgaW1hZ2Ugb25seVxuICAgICAgICAkKCcjc3Bpbm5lci1wcm9maWxlJykucmVtb3ZlQ2xhc3MoJ2Qtbm9uZScpO1xuICAgICAgICAkKCcjdGh1bWItcHJvZmlsZScpLmNzcygnb3BhY2l0eScsICcwLjMnKTtcblxuICAgICAgICAvLyBDcmVhdGUgRm9ybURhdGEgZm9yIGZpbGUgdXBsb2FkXG4gICAgICAgIGNvbnN0IGZvcm1fZGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgICAgICBmb3JtX2RhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSk7XG4gICAgICAgIGZvcm1fZGF0YS5hcHBlbmQoJ3NpdGVfaWQnLCAnMScpO1xuICAgICAgICBmb3JtX2RhdGEuYXBwZW5kKCdmaWxlYWJsZV90eXBlJywgJ2Rldl90ZXN0Jyk7XG4gICAgICAgIGZvcm1fZGF0YS5hcHBlbmQoJ2ZpbGVhYmxlX2NhdGVnb3J5JywgJ2F0dGFjaG1lbnRfZGVtbycpO1xuXG4gICAgICAgIC8vIFVwbG9hZCBmaWxlIHZpYSBBSkFYXG4gICAgICAgICQuYWpheCh7XG4gICAgICAgICAgICB1cmw6ICcvX3VwbG9hZCcsXG4gICAgICAgICAgICB0eXBlOiAnUE9TVCcsXG4gICAgICAgICAgICBkYXRhOiBmb3JtX2RhdGEsXG4gICAgICAgICAgICBwcm9jZXNzRGF0YTogZmFsc2UsXG4gICAgICAgICAgICBjb250ZW50VHlwZTogZmFsc2UsXG4gICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbihyZXNwb25zZSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdVcGxvYWQgc3VjY2Vzc2Z1bCEnKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnUmVzcG9uc2U6JywgcmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdGaWxlIGtleTonLCByZXNwb25zZS5hdHRhY2htZW50LmtleSk7XG5cbiAgICAgICAgICAgICAgICAvLyBTaG93IHRodW1ibmFpbHMgY29udGFpbmVyXG4gICAgICAgICAgICAgICAgJCgnI3RodW1ibmFpbHMtY29udGFpbmVyJykucmVtb3ZlQ2xhc3MoJ2Qtbm9uZScpO1xuXG4gICAgICAgICAgICAgICAgLy8gR2VuZXJhdGUgdGh1bWJuYWlsIFVSTHNcbiAgICAgICAgICAgICAgICBjb25zdCBrZXkgPSByZXNwb25zZS5hdHRhY2htZW50LmtleTtcbiAgICAgICAgICAgICAgICBjb25zdCBleHRlbnNpb24gPSByZXNwb25zZS5hdHRhY2htZW50LmZpbGVfZXh0ZW5zaW9uO1xuXG4gICAgICAgICAgICAgICAgJCgnI3RodW1iLXByb2ZpbGUnKS5hdHRyKCdzcmMnLCBgL190aHVtYm5haWwvJHtrZXl9L2NvdmVyLzk2Lzk2YCk7XG4gICAgICAgICAgICAgICAgJCgnI3RodW1iLTIwMCcpLmF0dHIoJ3NyYycsIGAvX3RodW1ibmFpbC8ke2tleX0vY292ZXIvMjAwLzIwMGApO1xuICAgICAgICAgICAgICAgICQoJyN0aHVtYi0yNDB4MTgwJykuYXR0cignc3JjJywgYC9fdGh1bWJuYWlsLyR7a2V5fS9jb3Zlci8yNDAvMTgwYCk7XG5cbiAgICAgICAgICAgICAgICAvLyBVc2UgaWNvbiBlbmRwb2ludCBmb3IgZmlsZSB0eXBlIGljb25cbiAgICAgICAgICAgICAgICAkKCcjdGh1bWItaWNvbicpLmF0dHIoJ3NyYycsIGAvX2ljb25fYnlfZXh0ZW5zaW9uLyR7ZXh0ZW5zaW9ufT93aWR0aD0xMDAmaGVpZ2h0PTEwMGApO1xuXG4gICAgICAgICAgICAgICAgLy8gU2V0IGRvd25sb2FkL2lubGluZSBVUkxzXG4gICAgICAgICAgICAgICAgJCgnI2J0bi12aWV3LWlubGluZScpLmF0dHIoJ2hyZWYnLCBgL19pbmxpbmUvJHtrZXl9YCk7XG4gICAgICAgICAgICAgICAgJCgnI2J0bi12aWV3LWRvd25sb2FkJykuYXR0cignaHJlZicsIGAvX2Rvd25sb2FkLyR7a2V5fWApO1xuXG4gICAgICAgICAgICAgICAgLy8gSGlkZSBzcGlubmVyLCByZXN0b3JlIG9wYWNpdHlcbiAgICAgICAgICAgICAgICAkKCcjc3Bpbm5lci1wcm9maWxlJykuYWRkQ2xhc3MoJ2Qtbm9uZScpO1xuICAgICAgICAgICAgICAgICQoJyN0aHVtYi1wcm9maWxlJykuY3NzKCdvcGFjaXR5JywgJzEnKTtcblxuICAgICAgICAgICAgICAgIC8vIENsZWFyIGZpbGUgaW5wdXQgZm9yIGZ1dHVyZSB1cGxvYWRzXG4gICAgICAgICAgICAgICAgJCgnI2Jhc2ljLXVwbG9hZC1pbnB1dCcpLnZhbCgnJyk7XG4gICAgICAgICAgICAgICAgJCgnI3VwbG9hZC1zdGF0dXMnKS5odG1sKGA8c3BhbiBjbGFzcz1cInRleHQtc3VjY2Vzc1wiPjxpIGNsYXNzPVwiYmkgYmktY2hlY2stY2lyY2xlXCI+PC9pPiBVcGxvYWQgY29tcGxldGUhPC9zcGFuPmApO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbih4aHIsIHN0YXR1cywgZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdVcGxvYWQgZmFpbGVkOicsIGVycm9yKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdSZXNwb25zZTonLCB4aHIucmVzcG9uc2VKU09OKTtcblxuICAgICAgICAgICAgICAgIC8vIEhpZGUgc3Bpbm5lciwgcmVzdG9yZSBvcGFjaXR5XG4gICAgICAgICAgICAgICAgJCgnI3NwaW5uZXItcHJvZmlsZScpLmFkZENsYXNzKCdkLW5vbmUnKTtcbiAgICAgICAgICAgICAgICAkKCcjdGh1bWItcHJvZmlsZScpLmNzcygnb3BhY2l0eScsICcxJyk7XG5cbiAgICAgICAgICAgICAgICAvLyBDbGVhciBmaWxlIGlucHV0XG4gICAgICAgICAgICAgICAgJCgnI2Jhc2ljLXVwbG9hZC1pbnB1dCcpLnZhbCgnJyk7XG4gICAgICAgICAgICAgICAgJCgnI3VwbG9hZC1zdGF0dXMnKS5odG1sKGA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+PGkgY2xhc3M9XCJiaSBiaS14LWNpcmNsZVwiPjwvaT4gVXBsb2FkIGZhaWxlZDwvc3Bhbj5gKTtcblxuICAgICAgICAgICAgICAgIC8vIFNob3cgZXJyb3IgdG8gdXNlclxuICAgICAgICAgICAgICAgIGFsZXJ0KCdVcGxvYWQgZmFpbGVkOiAnICsgKHhoci5yZXNwb25zZUpTT04/LmVycm9yIHx8IGVycm9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHN0YXRpYyBvbl9hcHBfcmVhZHkoKSB7XG4gICAgICAgIERldl9BdHRhY2htZW50cy5pbml0KCk7XG4gICAgfVxuXG4gICAgLy8gc3RhdGljIG9uX2pxaHRtbF9yZWFkeSgpIHtcbiAgICAvLyAgICAgLy8gQ2FsbGVkIGFmdGVyIGFsbCBKUUhUTUwgY29tcG9uZW50cyBoYXZlIGxvYWRlZCBhbmQgcmVuZGVyZWRcbiAgICAvLyAgICAgLy8gVXNlIHRoaXMgaWYgeW91IG5lZWQgdG8gaW50ZXJhY3Qgd2l0aCBKUUhUTUwgY29tcG9uZW50c1xuICAgIC8vICAgICAvLyBPdGhlcndpc2UsIHVzZSBvbl9hcHBfcmVhZHkoKSBmb3IgbW9zdCBpbml0aWFsaXphdGlvblxuICAgIC8vIH1cbn0iXSwibWFwcGlu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QUssRUFBRSx1QkFBdUJGLFNBQVMsdUJBQXVCLENBQUM7O1FBRXJGO1FBQ0E1QixDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQzhCLElBQUksQ0FBQyxNQUFNLEVBQUUsWUFBWUgsR0FBRyxFQUFFLENBQUM7UUFDckQzQixDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQzhCLElBQUksQ0FBQyxNQUFNLEVBQUUsY0FBY0gsR0FBRyxFQUFFLENBQUM7O1FBRXpEO1FBQ0EzQixDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQytCLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDeEMvQixDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQ2MsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7O1FBRXZDO1FBQ0FkLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDZ0MsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNoQ2hDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDaUMsSUFBSSxDQUFDLHVGQUF1RixDQUFDO01BQ3JILENBQUM7TUFDREMsS0FBSyxFQUFFLFNBQUFBLENBQVNDLEdBQUcsRUFBRUMsTUFBTSxFQUFFRixLQUFLLEVBQUU7UUFBQSxJQUFBRyxpQkFBQTtRQUNoQ25DLE9BQU8sQ0FBQ2dDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRUEsS0FBSyxDQUFDO1FBQ3RDaEMsT0FBTyxDQUFDZ0MsS0FBSyxDQUFDLFdBQVcsRUFBRUMsR0FBRyxDQUFDRyxZQUFZLENBQUM7O1FBRTVDO1FBQ0F0QyxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQytCLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDeEMvQixDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQ2MsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7O1FBRXZDO1FBQ0FkLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDZ0MsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNoQ2hDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDaUMsSUFBSSxDQUFDLCtFQUErRSxDQUFDOztRQUV6RztRQUNBTSxLQUFLLENBQUMsaUJBQWlCLElBQUksRUFBQUYsaUJBQUEsR0FBQUYsR0FBRyxDQUFDRyxZQUFZLGNBQUFELGlCQUFBLHVCQUFoQkEsaUJBQUEsQ0FBa0JILEtBQUssS0FBSUEsS0FBSyxDQUFDLENBQUM7TUFDakU7SUFDSixDQUFDLENBQUM7RUFDTjtFQUVBLE9BQU9NLFlBQVlBLENBQUEsRUFBRztJQUNsQjFDLGVBQWUsQ0FBQ0MsSUFBSSxDQUFDLENBQUM7RUFDMUI7O0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNKIiwiaWdub3JlTGlzdCI6W119