[PR #1993] [MERGED] Change images from being stored in base64 to files #1692

Closed
opened 2026-02-05 18:21:43 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/pelican-dev/panel/pull/1993
Author: @notAreYouScared
Created: 12/13/2025
Status: Merged
Merged: 12/16/2025
Merged by: @notAreYouScared

Base: mainHead: charles/image-refactor


📝 Commits (10+)

  • c90d13e disaster response solution v0.1
  • 8c7ad71 rabbit updates
  • 5ae8c8f Update EggImporterService
  • ea56809 just use the ext from the base64 decode
  • 1e49e28 gif could exist in the table...
  • 4b56094 fix svg files in migration
  • e66ab8a Merge branch 'main' into charles/image-refactor
  • d63f84b I'm 110% over it.
  • 971db91 use Storage facade
  • 2e14128 make own action for deleting server icon

📊 Changes

10 files changed (+566 additions, -313 deletions)

View changed files

📝 app/Filament/Admin/Resources/Eggs/Pages/EditEgg.php (+79 -61)
📝 app/Filament/Admin/Resources/Servers/Pages/EditServer.php (+127 -123)
app/Filament/Components/Actions/DeleteServerIcon.php (+50 -0)
📝 app/Filament/Pages/Auth/EditProfile.php (+1 -0)
📝 app/Filament/Server/Pages/Settings.php (+126 -123)
📝 app/Models/Egg.php (+29 -2)
📝 app/Models/Server.php (+29 -2)
📝 app/Services/Eggs/Sharing/EggExporterService.php (+21 -1)
📝 app/Services/Eggs/Sharing/EggImporterService.php (+31 -1)
database/migrations/2025_12_13_000000_convert_base64_images_to_files.php (+73 -0)

📄 Description

Changes the logic and saving of image/icons to saving them as physical files to reduce the payload side of livewire update calls...

For egg images, they're converted to base64 at egg export. and converted to files at egg import.

There is a migration that should convert existing icons/images to physical files before nuking the column... If it fails... sorry upload it again. Its also a one way migration.

Fixes https://github.com/pelican-dev/panel/issues/1948


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/pelican-dev/panel/pull/1993 **Author:** [@notAreYouScared](https://github.com/notAreYouScared) **Created:** 12/13/2025 **Status:** ✅ Merged **Merged:** 12/16/2025 **Merged by:** [@notAreYouScared](https://github.com/notAreYouScared) **Base:** `main` ← **Head:** `charles/image-refactor` --- ### 📝 Commits (10+) - [`c90d13e`](https://github.com/pelican-dev/panel/commit/c90d13ef52f5f866539a472bc3f53b9da4c32af8) disaster response solution v0.1 - [`8c7ad71`](https://github.com/pelican-dev/panel/commit/8c7ad712b8f8d71107dc786f563a8cff8e39da7d) rabbit updates - [`5ae8c8f`](https://github.com/pelican-dev/panel/commit/5ae8c8f5752d3ad40d4429f70bcf5ca4f0bf8c5b) Update EggImporterService - [`ea56809`](https://github.com/pelican-dev/panel/commit/ea56809362977a44fb58b6e497fef6a460f8f15a) just use the ext from the base64 decode - [`1e49e28`](https://github.com/pelican-dev/panel/commit/1e49e281404af84ae89a3e8f180255d5d3e5fc6b) gif could exist in the table... - [`4b56094`](https://github.com/pelican-dev/panel/commit/4b56094bad45bc26e730e38428c1d2d280f4b5ff) fix svg files in migration - [`e66ab8a`](https://github.com/pelican-dev/panel/commit/e66ab8acb7bb2c705b0dce5c781132882daea1df) Merge branch 'main' into charles/image-refactor - [`d63f84b`](https://github.com/pelican-dev/panel/commit/d63f84baf575d8b49b68aaf0a203143cd52212bd) I'm 110% over it. - [`971db91`](https://github.com/pelican-dev/panel/commit/971db91965bbd5243719028cb13ed9710c1b5bc3) use Storage facade - [`2e14128`](https://github.com/pelican-dev/panel/commit/2e14128e19d9fe9ce6c1480617d3f2e7b87d8c5e) make own action for deleting server icon ### 📊 Changes **10 files changed** (+566 additions, -313 deletions) <details> <summary>View changed files</summary> 📝 `app/Filament/Admin/Resources/Eggs/Pages/EditEgg.php` (+79 -61) 📝 `app/Filament/Admin/Resources/Servers/Pages/EditServer.php` (+127 -123) ➕ `app/Filament/Components/Actions/DeleteServerIcon.php` (+50 -0) 📝 `app/Filament/Pages/Auth/EditProfile.php` (+1 -0) 📝 `app/Filament/Server/Pages/Settings.php` (+126 -123) 📝 `app/Models/Egg.php` (+29 -2) 📝 `app/Models/Server.php` (+29 -2) 📝 `app/Services/Eggs/Sharing/EggExporterService.php` (+21 -1) 📝 `app/Services/Eggs/Sharing/EggImporterService.php` (+31 -1) ➕ `database/migrations/2025_12_13_000000_convert_base64_images_to_files.php` (+73 -0) </details> ### 📄 Description Changes the logic and saving of image/icons to saving them as physical files to reduce the payload side of livewire update calls... For egg images, they're converted to base64 at egg export. and converted to files at egg import. There is a migration that _**should**_ convert existing icons/images to physical files before nuking the column... If it fails... sorry upload it again. Its also a one way migration. Fixes https://github.com/pelican-dev/panel/issues/1948 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-05 18:21:43 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/panel-pelican-dev#1692