ItemEditor — Advanced GUI Item Editor icon

ItemEditor — Advanced GUI Item Editor -----

A clean in-game GUI item editor — Name/Lore, Flags, Attributes, More



v1.0.1 — Name/Lore Presets (YAML) + Save/Load UI
Changelog


1.0.1 — 2026-01-15

✅ Added
  • Name/Lore Presets (YAML)
    • Save / load presets as .yml in:
      Code (Text):
      plugins/ItemEditor/Name_Lore/<fileName>.yml
  • Name/Lore UI buttons
    • Added Save and Load buttons on both Name and Lore dialogs.
  • Save Preset Dialog
    • Status indicator: Not saved / Saving... / Saved / Error: ...
    • Filename textbox (max 30 chars)
    • Async save (non-blocking)
  • Load Preset Dialog
    • Async preset listing + Reload (async)
    • Presets displayed as clickable buttons
    • Tooltip preview for Name/Lore (trimmed to avoid spam)
  • Preset Detail Dialog
    • Buttons: Load, Set, Back, Delete
    • Load: load preset into editor inputs (session/UI only)
    • Set: apply preset directly to the real item (bypasses editor input limits)
    • Delete: delete preset file (async) with confirmation


️ Security / Safety
  • Strict filename validation + sanitization
    • Allowed: A–Z a–z 0–9 _ -
    • Length: 1..30
    • Blocks path traversal and invalid characters (no /, \\, .., spaces, unicode, dots, etc.)
    • Auto-normalizes .yml suffix if entered
  • Duplicate filename handling
    • No silent overwrite
    • Auto-suffix: name-2, name-3, ... (respecting max length)
  • Atomic file write
    • Write to
      Code (Text):
      <name>.yml.tmp
      then rename/move to
      Code (Text):
      <name>.yml
    • Prevents corrupted YAML on crash/restart mid-write
  • YAML schema validation
    • Only accepts:
      Code (Text):
      name: <string?>
      lore: <list<string>?>
    • Rejects wrong types safely (no crash)
  • Size / limit protections
    • Max preset file size: 100 KB
    • Max lore lines: 500
    • Max raw line length: 4024
  • Reload spam protection
    • Request ID guard: stale async reload results are discarded
  • Textbox overflow protection
    • If preset exceeds editor input limits:
    • Shows warning: "Text is too long for the editor input. Use Set to apply directly."
    • All-or-nothing load (prevents partial/broken state)


Changed
  • Name/Lore now supports a preset workflow:
    • Save current edits as YAML preset
    • Load preset into editor inputs for further tweaks
    • Use Set to apply directly when UI limits are hit


Fixed
  • Prevents preset-related issues:
    • Corrupted YAML (atomic writes)
    • Unsafe filenames (strict validation)
    • Reload race conditions (request ID guard)
    • Editor overflow causing broken state (warning + Set path)
----------, Jan 15, 2026
Resource Information
Author:
----------
Total Downloads: 53
First Release: Jan 15, 2026
Last Update: Jan 16, 2026
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings