openhands
5b09179404
Add all-in-one Studio merging furni import and catalog management
...
Add a full-viewport /admin/studio workspace that unifies the import and
catalog systems into a single automated flow:
- Furni library browser against official Habbo furnidata with search,
type/status filters, live previews and pagination
- Catalog structure rail showing where imported furniture lands
- Detail drawer with automatic placement preview (category + price via
classifyFurni/autoPriceFurni) and one-click import that downloads
assets, converts SWF to nitro, writes items_base, updates
FurnitureData.json and creates an auto-priced catalog entry
- Batch auto-import with SSE progress and RCON cache refresh
- Nitro editor integration and imported-item deletion
Extract pure auto-catalog helpers (CATEGORY_PAGE, CLASSNAME_RULES,
classifyFurni, autoPriceFurni) into a client-safe module shared by the
server pipeline and the Studio UI so the preview always matches what the
emulator import applies.
2026-08-15 15:34:07 +02:00
..
2026-08-07 18:55:02 +02:00
2026-08-03 18:08:57 +02:00
2026-07-13 21:57:41 +02:00
2026-08-07 18:55:02 +02:00
2026-08-15 15:34:07 +02:00
2026-07-17 23:09:57 +02:00
2026-08-15 15:34:07 +02:00
2026-07-26 20:28:11 +02:00
2026-08-01 14:15:39 +02:00
2026-07-26 20:28:11 +02:00
2026-07-26 20:28:11 +02:00
2026-08-01 15:02:21 +02:00
2026-08-02 11:46:43 +02:00
2026-08-02 11:46:43 +02:00
2026-08-07 18:53:59 +02:00
2026-07-26 20:28:11 +02:00
2026-07-31 14:11:03 +02:00
2026-07-30 21:45:53 +02:00
2026-07-30 21:45:53 +02:00
2026-08-07 18:53:59 +02:00
2026-08-15 15:34:07 +02:00
2026-07-30 20:41:31 +02:00
2026-07-18 18:57:14 +02:00
2026-07-13 21:57:41 +02:00
2026-08-01 14:15:39 +02:00
2026-08-09 11:51:26 +02:00
2026-07-21 20:27:08 +02:00
2026-08-01 15:07:54 +02:00
2026-08-01 15:07:54 +02:00
2026-07-18 20:31:18 +02:00
2026-08-01 17:38:43 +02:00
2026-08-07 18:53:59 +02:00
2026-08-01 15:07:54 +02:00
2026-07-22 18:45:59 +02:00
2026-08-14 11:20:37 +02:00
2026-08-14 11:20:37 +02:00
2026-08-02 14:22:05 +02:00
2026-08-02 14:22:05 +02:00
2026-08-07 18:53:59 +02:00
2026-07-13 21:57:41 +02:00
2026-08-07 18:53:59 +02:00
2026-07-13 21:57:41 +02:00
2026-08-01 15:02:21 +02:00
2026-08-07 18:53:59 +02:00
2026-07-13 21:57:41 +02:00
2026-08-01 22:09:22 +02:00
2026-08-01 22:09:22 +02:00
2026-07-31 14:11:03 +02:00
2026-07-31 14:11:03 +02:00
2026-08-14 11:20:37 +02:00
2026-08-02 17:32:32 +02:00
2026-08-01 21:52:28 +02:00
2026-07-26 20:28:11 +02:00
2026-07-13 21:57:41 +02:00
2026-07-25 17:33:06 +02:00
2026-07-20 17:41:53 +02:00
2026-08-09 21:48:43 +02:00
2026-08-09 21:48:43 +02:00
2026-07-17 22:28:18 +02:00
2026-08-02 14:22:05 +02:00
2026-07-26 20:28:11 +02:00
2026-08-09 20:03:26 +02:00
2026-08-09 21:48:43 +02:00
2026-08-09 11:51:26 +02:00
2026-08-07 18:53:59 +02:00
2026-07-13 21:57:41 +02:00
2026-07-13 21:57:41 +02:00
2026-07-26 20:28:11 +02:00
2026-07-18 17:04:48 +02:00
2026-07-28 18:49:25 +02:00
2026-08-07 18:53:59 +02:00
2026-07-13 21:57:41 +02:00
2026-08-01 22:12:31 +02:00
2026-08-01 15:02:21 +02:00
2026-08-01 14:38:42 +02:00
2026-07-13 21:57:41 +02:00
2026-08-01 18:37:19 +02:00
2026-08-01 18:37:19 +02:00
2026-07-13 21:57:41 +02:00
2026-07-26 20:28:11 +02:00
2026-08-14 11:20:37 +02:00
2026-08-12 14:34:29 +02:00
2026-08-01 22:12:31 +02:00
2026-08-07 18:53:59 +02:00
2026-07-26 20:28:11 +02:00
2026-07-13 21:57:41 +02:00
2026-08-05 11:10:16 +02:00
2026-07-13 21:57:41 +02:00
2026-07-25 17:33:06 +02:00
2026-08-05 11:10:16 +02:00
2026-08-07 19:19:05 +02:00
2026-08-08 21:49:24 +02:00
2026-08-08 21:46:40 +02:00
2026-07-16 15:53:53 +02:00
2026-08-01 14:15:43 +02:00
2026-07-26 20:28:11 +02:00
2026-07-13 21:57:41 +02:00
2026-07-13 21:57:41 +02:00
2026-08-07 18:53:59 +02:00
2026-07-13 21:57:41 +02:00
2026-08-07 18:53:59 +02:00
2026-07-13 21:57:41 +02:00
2026-07-21 21:08:33 +02:00
2026-07-13 21:57:41 +02:00