using System.Collections; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UIElements; using Newtonsoft.Json; using System.Collections.Generic; using System.Globalization; class FurnitureFetcher : MonoBehaviour { public VisualTreeAsset itemTemplate; public UIDocument uiDocument; public static string API_URL = "http://100.123.31.103:5102/api/v1/FurnitureVariant/GetAll"; private static readonly Dictionary CurrencySymbols = new() { { "USD", "$" }, { "EUR", "€" }, { "GBP", "£" }, { "JPY", "¥" }, { "MXN", "$" }, { "CAD", "$" }, { "BRL", "R$" }, { "ARS", "$" }, { "CLP", "$" }, { "COP", "$" }, { "CNY", "¥" }, { "INR", "₹" } }; private void Awake() { StartCoroutine(GetFurnitureData()); } IEnumerator GetFurnitureData() { using UnityWebRequest request = UnityWebRequest.Get(API_URL); request.downloadHandler = new DownloadHandlerBuffer(); yield return request.SendWebRequest(); string rawResponse = request.downloadHandler.text; //Debug.Log("📦 RAW RESPONSE:\n" + rawResponse); if (request.result == UnityWebRequest.Result.Success) { string wrappedJson = "{\"items\":" + rawResponse + "}"; FurnitureVariantList list; try { list = JsonConvert.DeserializeObject(wrappedJson); } catch (System.Exception ex) { Debug.LogError("❌ Error al deserializar JSON: " + ex.Message); yield break; } var root = uiDocument.rootVisualElement; var scrollView = root.Q("furniture-list"); scrollView.Clear(); foreach (var variant in list.items) { VisualElement item = itemTemplate.CloneTree(); item.Q