diff --git a/browser-interface/packages/config/index.ts b/browser-interface/packages/config/index.ts index 6c24b16446..527984da30 100644 --- a/browser-interface/packages/config/index.ts +++ b/browser-interface/packages/config/index.ts @@ -197,7 +197,7 @@ export namespace ethereumConfigurations { wss: 'wss://rpc.decentraland.org/mainnet', http: 'https://rpc.decentraland.org/mainnet', etherscan: 'https://etherscan.io', - names: 'https://api.thegraph.com/subgraphs/name/decentraland/marketplace', + names: 'https://subgraph.decentraland.org/marketplace', // contracts LANDProxy: assertValue(contractInfo.mainnet.LANDProxy), diff --git a/scripts/package-lock.json b/scripts/package-lock.json index 06ddd45b22..ae929d0c7e 100644 --- a/scripts/package-lock.json +++ b/scripts/package-lock.json @@ -9,7 +9,7 @@ "version": "1.0.0", "license": "Apache-2.0", "dependencies": { - "@dcl/protocol": "^1.0.0-9115457439.commit-926ebd1", + "@dcl/protocol": "1.0.0-9466805132.commit-365e0bb", "@protobuf-ts/protoc": "^2.8.2", "@types/fs-extra": "^11.0.1", "@types/glob": "^8.0.1", @@ -36,9 +36,9 @@ } }, "node_modules/@dcl/protocol": { - "version": "1.0.0-9115457439.commit-926ebd1", - "resolved": "https://registry.npmjs.org/@dcl/protocol/-/protocol-1.0.0-9115457439.commit-926ebd1.tgz", - "integrity": "sha512-4MA1sx4cpfapP+EDAZdpdaONthoDlv4VMc0CwAKcmhp0vxGgExeEpLkPh6gvNXmkl8z8z3nEcDOX1X95dvCYuA==", + "version": "1.0.0-9466805132.commit-365e0bb", + "resolved": "https://registry.npmjs.org/@dcl/protocol/-/protocol-1.0.0-9466805132.commit-365e0bb.tgz", + "integrity": "sha512-CMO2/JkdMPLJQj+jdT5yqolKFDPkQF2hkS/HEUtsxCzkLoN3H0xXmDUhRuh2LTmBBl401meH/tJ+fQcPyd9xLQ==", "dependencies": { "@dcl/ts-proto": "1.154.0" } @@ -569,9 +569,9 @@ } }, "@dcl/protocol": { - "version": "1.0.0-9115457439.commit-926ebd1", - "resolved": "https://registry.npmjs.org/@dcl/protocol/-/protocol-1.0.0-9115457439.commit-926ebd1.tgz", - "integrity": "sha512-4MA1sx4cpfapP+EDAZdpdaONthoDlv4VMc0CwAKcmhp0vxGgExeEpLkPh6gvNXmkl8z8z3nEcDOX1X95dvCYuA==", + "version": "1.0.0-9466805132.commit-365e0bb", + "resolved": "https://registry.npmjs.org/@dcl/protocol/-/protocol-1.0.0-9466805132.commit-365e0bb.tgz", + "integrity": "sha512-CMO2/JkdMPLJQj+jdT5yqolKFDPkQF2hkS/HEUtsxCzkLoN3H0xXmDUhRuh2LTmBBl401meH/tJ+fQcPyd9xLQ==", "requires": { "@dcl/ts-proto": "1.154.0" } diff --git a/scripts/package.json b/scripts/package.json index 34bf9a475b..7a1c4ba427 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -16,7 +16,7 @@ "typescript": "^4.2.3" }, "dependencies": { - "@dcl/protocol": "^1.0.0-9115457439.commit-926ebd1", + "@dcl/protocol": "1.0.0-9466805132.commit-365e0bb", "@protobuf-ts/protoc": "^2.8.2", "@types/fs-extra": "^11.0.1", "@types/glob": "^8.0.1", diff --git a/unity-renderer/Assets/DCLPlugins/ECS7/ECSComponents/UIText/UiTextHandler.cs b/unity-renderer/Assets/DCLPlugins/ECS7/ECSComponents/UIText/UiTextHandler.cs index 859df20cdf..9c11d55b47 100644 --- a/unity-renderer/Assets/DCLPlugins/ECS7/ECSComponents/UIText/UiTextHandler.cs +++ b/unity-renderer/Assets/DCLPlugins/ECS7/ECSComponents/UIText/UiTextHandler.cs @@ -39,6 +39,12 @@ public void OnComponentRemoved(IParcelScene scene, IDCLEntity entity) public void OnComponentModelUpdated(IParcelScene scene, IDCLEntity entity, PBUiText model) { uiElement.text = model.Value; + + var wrapMode = WhiteSpace.Normal; // Default mode is Wrap enabled + if (model.HasTextWrap && model.TextWrap == TextWrap.TwNoWrap) + wrapMode = WhiteSpace.NoWrap; + + uiElement.style.whiteSpace = wrapMode; uiElement.style.color = model.GetColor().ToUnityColor(); uiElement.style.fontSize = model.GetFontSize(); uiElement.style.unityTextAlign = model.GetTextAlign().ToUnityTextAlign(); diff --git a/unity-renderer/Assets/DCLServices/EmotesCatalog/EmotesCatalogService/LambdasEmotesCatalogService.cs b/unity-renderer/Assets/DCLServices/EmotesCatalog/EmotesCatalogService/LambdasEmotesCatalogService.cs index 4ef887090d..62ff93ab22 100644 --- a/unity-renderer/Assets/DCLServices/EmotesCatalog/EmotesCatalogService/LambdasEmotesCatalogService.cs +++ b/unity-renderer/Assets/DCLServices/EmotesCatalog/EmotesCatalogService/LambdasEmotesCatalogService.cs @@ -25,17 +25,19 @@ private class EmoteCollectionResponse public EmoteEntityDto[] entities; } - internal readonly Dictionary emotes = new (); - internal readonly Dictionary>> promises = new (); - internal readonly Dictionary emotesOnUse = new (); - internal readonly Dictionary>>> ownedEmotesPromisesByUser = new (); + internal readonly Dictionary emotes = new (new Dictionary(), StringIgnoreCaseEqualityComparer.Default); + internal readonly Dictionary>> promises = new (new Dictionary>>(), + StringIgnoreCaseEqualityComparer.Default); + internal readonly Dictionary emotesOnUse = new (new Dictionary(), StringIgnoreCaseEqualityComparer.Default); + internal readonly Dictionary>>> ownedEmotesPromisesByUser = new ( + new Dictionary>>>(), StringIgnoreCaseEqualityComparer.Default); private readonly IEmotesRequestSource emoteSource; private readonly IAddressableResourceProvider addressableResourceProvider; private readonly ICatalyst catalyst; private readonly ILambdasService lambdasService; private readonly DataStore dataStore; - private readonly Dictionary ownedUrns = new (); + private readonly Dictionary ownedUrns = new (new Dictionary(), StringIgnoreCaseEqualityComparer.Default); private EmbeddedEmotesSO embeddedEmotesSo; private CancellationTokenSource addressableCts; diff --git a/unity-renderer/Assets/DCLServices/WearablesCatalogService/LambdasWearablesCatalogService.cs b/unity-renderer/Assets/DCLServices/WearablesCatalogService/LambdasWearablesCatalogService.cs index 3a2205e424..68481810ab 100644 --- a/unity-renderer/Assets/DCLServices/WearablesCatalogService/LambdasWearablesCatalogService.cs +++ b/unity-renderer/Assets/DCLServices/WearablesCatalogService/LambdasWearablesCatalogService.cs @@ -47,7 +47,7 @@ public WearableCollectionResponse(EntityDto[] entities) private const int MAX_WEARABLES_PER_REQUEST = 200; private readonly ILambdasService lambdasService; - private readonly Dictionary wearablesInUseCounters = new (); + private readonly Dictionary wearablesInUseCounters = new (new Dictionary(), StringIgnoreCaseEqualityComparer.Default); private readonly Dictionary<(string userId, int pageSize), LambdaResponsePagePointer> ownerWearablesPagePointers = new (); private readonly Dictionary<(string userId, string collectionId, int pageSize), LambdaResponsePagePointer> thirdPartyCollectionPagePointers = new (); private readonly List pendingWearablesToRequest = new (); diff --git a/unity-renderer/Assets/Plugins/IntercomWindow/IntercomWindow.jslib b/unity-renderer/Assets/Plugins/IntercomWindow/IntercomWindow.jslib index 359e632e58..b3b6b511d2 100644 --- a/unity-renderer/Assets/Plugins/IntercomWindow/IntercomWindow.jslib +++ b/unity-renderer/Assets/Plugins/IntercomWindow/IntercomWindow.jslib @@ -4,11 +4,11 @@ var IntercomWindow = { const windowHeight = window.innerHeight const windowWidth = window.innerWidth const popupHeight = Math.min(700, windowHeight) - const popupWidth = Math.min(400, windowWidth) + const popupWidth = Math.min(450, windowWidth) const top = Math.max(windowHeight - popupHeight, 0) const left = Math.max(windowWidth - popupWidth - 20, 0) - window.open('https://intercom.decentraland.org', 'intercom', `popup,top=${top},left=${left},width=${popupWidth},height=${popupHeight}`) + window.open('https://decentraland.org/help', 'intercom', `popup,top=${top},left=${left},width=${popupWidth},height=${popupHeight}`) } }; diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/BackpackEditorHUDV2/WearableGridController.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/BackpackEditorHUDV2/WearableGridController.cs index 6304345d73..8d70627e5c 100644 --- a/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/BackpackEditorHUDV2/WearableGridController.cs +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/BackpackEditorHUDV2/WearableGridController.cs @@ -33,6 +33,7 @@ public class WearableGridController private readonly AvatarSlotsHUDController avatarSlotsHUDController; private readonly IBackpackAnalyticsService backpackAnalyticsService; private readonly ICustomNftCollectionService customNftCollectionService; + private readonly List customWearablesBuffer = new (); private Dictionary currentWearables = new (); private CancellationTokenSource requestWearablesCancellationToken = new (); @@ -265,18 +266,31 @@ private async UniTask RequestWearablesAndShowThem(int page, CancellationTok try { - int customWearablesCount = wearables.Count; + int ownedWearablesCount = wearables.Count; + int ownedWearablesTotalAmount = totalAmount; - await UniTask.WhenAll(FetchCustomWearableCollections(wearables, cancellationToken), - FetchCustomWearableItems(wearables, cancellationToken)); + customWearablesBuffer.Clear(); - customWearablesCount = wearables.Count - customWearablesCount; + await UniTask.WhenAll(FetchCustomWearableCollections(customWearablesBuffer, cancellationToken), + FetchCustomWearableItems(customWearablesBuffer, cancellationToken)); + + int customWearablesCount = customWearablesBuffer.Count; totalAmount += customWearablesCount; - // clamp wearables size to page size - // TODO: remove wearables that dont applies to the current filters - for (int i = wearables.Count - 1; i >= PAGE_SIZE; i--) - wearables.RemoveAt(i); + if (ownedWearablesCount < PAGE_SIZE && customWearablesCount > 0) + { + int ownedWearablesStartingPage = (ownedWearablesTotalAmount / PAGE_SIZE) + 1; + int customWearablesOffsetPage = page - ownedWearablesStartingPage; + int skip = customWearablesOffsetPage * PAGE_SIZE; + // Fill the page considering the existing owned wearables + int count = PAGE_SIZE - ownedWearablesCount; + int until = skip + count; + + for (int i = skip; i < customWearablesBuffer.Count && i < until; i++) + wearables.Add(customWearablesBuffer[i]); + } + + customWearablesBuffer.Clear(); } catch (Exception e) when (e is not OperationCanceledException) { Debug.LogError(e); } @@ -285,7 +299,7 @@ await UniTask.WhenAll(FetchCustomWearableCollections(wearables, cancellationToke currentWearables = wearables.Select(ToWearableGridModel) .ToDictionary(item => ExtendedUrnParser.GetShortenedUrn(item.WearableId), model => model); - view.SetWearablePages(page, (totalAmount + PAGE_SIZE - 1) / PAGE_SIZE); + view.SetWearablePages(page, Mathf.CeilToInt((float) totalAmount / PAGE_SIZE)); // TODO: mark the wearables to be disposed if no references left view.ClearWearables(); diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/HelpAndSupportHUD/HelpAndSupportHUDController.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/HelpAndSupportHUD/HelpAndSupportHUDController.cs index 5ba0e0ed38..fffad4a3ec 100644 --- a/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/HelpAndSupportHUD/HelpAndSupportHUDController.cs +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/HelpAndSupportHUD/HelpAndSupportHUDController.cs @@ -9,7 +9,7 @@ namespace DCL.HelpAndSupportHUD { public class HelpAndSupportHUDController : IHUD { - internal const string CONTACT_SUPPORT_URL = "https://intercom.decentraland.org"; + internal const string CONTACT_SUPPORT_URL = "https://decentraland.org/help"; internal const string JOIN_DISCORD_URL = "https://dcl.gg/discord"; internal const string FAQ_URL = "https://docs.decentraland.org/decentraland/faq/"; public IHelpAndSupportHUDView view { get; } diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/TaskbarHUD/TaskbarHUDController.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/TaskbarHUD/TaskbarHUDController.cs index 1734566d74..4fb249af31 100644 --- a/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/TaskbarHUD/TaskbarHUDController.cs +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/TaskbarHUD/TaskbarHUDController.cs @@ -14,7 +14,7 @@ public class TaskbarHUDController : IHUD { - private const string INTERCOM_URL = "https://intercom.decentraland.org/"; + private const string INTERCOM_URL = "https://decentraland.org/help/"; private readonly IChatController chatController; private readonly IFriendsController friendsController; diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/DataStore_Common.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/DataStore_Common.cs index fcf1f06c0f..8fc1376f45 100644 --- a/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/DataStore_Common.cs +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/DataStore_Common.cs @@ -4,7 +4,7 @@ public class DataStore_Common { public readonly BaseVariable isSignUpFlow = new (); public readonly BaseVariable isApplicationQuitting = new (); - public readonly BaseDictionary wearables = new (); + public readonly BaseDictionary wearables = new (StringIgnoreCaseEqualityComparer.Default); public readonly BaseVariable isPlayerRendererLoaded = new (); public readonly BaseVariable appMode = new (); public readonly BaseVariable onOpenNFTPrompt = new (); diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/StringIgnoreCaseEqualityComparer.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/StringIgnoreCaseEqualityComparer.cs new file mode 100644 index 0000000000..dec3995a7c --- /dev/null +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/StringIgnoreCaseEqualityComparer.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; + +namespace DCL +{ + public class StringIgnoreCaseEqualityComparer : IEqualityComparer + { + public static StringIgnoreCaseEqualityComparer Default { get; } = new (); + + public bool Equals(string x, string y) => + string.Equals(x, y, StringComparison.OrdinalIgnoreCase); + + public int GetHashCode(string obj) => + StringComparer.OrdinalIgnoreCase.GetHashCode(obj); + } +} diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/StringIgnoreCaseEqualityComparer.cs.meta b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/StringIgnoreCaseEqualityComparer.cs.meta new file mode 100644 index 0000000000..d125bdb8a9 --- /dev/null +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/StringIgnoreCaseEqualityComparer.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 06a4d4095e1846a7840aaa9f0438084c +timeCreated: 1717610698 \ No newline at end of file diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/Variables/BaseDictionary.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/Variables/BaseDictionary.cs index d083d67a34..f23f0203f6 100644 --- a/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/Variables/BaseDictionary.cs +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/Variables/BaseDictionary.cs @@ -9,11 +9,19 @@ public class BaseDictionary : IBaseDictionary, IEnum public event Action OnAdded; public event Action OnRemoved; - internal readonly Dictionary dictionary = new Dictionary(); + internal readonly Dictionary dictionary; public TValue this[TKey key] { get => dictionary[key]; set => dictionary[key] = value; } - public BaseDictionary() { } + public BaseDictionary() + { + dictionary = new Dictionary(); + } + + public BaseDictionary(IEqualityComparer comparer) + { + dictionary = new Dictionary(new Dictionary(), comparer); + } public BaseDictionary(IEnumerable<(TKey, TValue)> elements) { diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/DecentralandProtocol/UiText.gen.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/DecentralandProtocol/UiText.gen.cs index c67d9c843e..fd57440d07 100644 --- a/unity-renderer/Assets/Scripts/MainScripts/DCL/DecentralandProtocol/UiText.gen.cs +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/DecentralandProtocol/UiText.gen.cs @@ -27,23 +27,34 @@ static UiTextReflection() { "CilkZWNlbnRyYWxhbmQvc2RrL2NvbXBvbmVudHMvdWlfdGV4dC5wcm90bxIb", "ZGVjZW50cmFsYW5kLnNkay5jb21wb25lbnRzGiBkZWNlbnRyYWxhbmQvY29t", "bW9uL2NvbG9ycy5wcm90bxouZGVjZW50cmFsYW5kL3Nkay9jb21wb25lbnRz", - "L2NvbW1vbi90ZXh0cy5wcm90byKbAgoIUEJVaVRleHQSDQoFdmFsdWUYASAB", + "L2NvbW1vbi90ZXh0cy5wcm90byLoAgoIUEJVaVRleHQSDQoFdmFsdWUYASAB", "KAkSLwoFY29sb3IYAiABKAsyGy5kZWNlbnRyYWxhbmQuY29tbW9uLkNvbG9y", "NEgAiAEBEkoKCnRleHRfYWxpZ24YAyABKA4yMS5kZWNlbnRyYWxhbmQuc2Rr", "LmNvbXBvbmVudHMuY29tbW9uLlRleHRBbGlnbk1vZGVIAYgBARI7CgRmb250", "GAQgASgOMiguZGVjZW50cmFsYW5kLnNkay5jb21wb25lbnRzLmNvbW1vbi5G", - "b250SAKIAQESFgoJZm9udF9zaXplGAUgASgFSAOIAQFCCAoGX2NvbG9yQg0K", - "C190ZXh0X2FsaWduQgcKBV9mb250QgwKCl9mb250X3NpemVCFKoCEURDTC5F", - "Q1NDb21wb25lbnRzYgZwcm90bzM=")); + "b250SAKIAQESFgoJZm9udF9zaXplGAUgASgFSAOIAQESPQoJdGV4dF93cmFw", + "GAYgASgOMiUuZGVjZW50cmFsYW5kLnNkay5jb21wb25lbnRzLlRleHRXcmFw", + "SASIAQFCCAoGX2NvbG9yQg0KC190ZXh0X2FsaWduQgcKBV9mb250QgwKCl9m", + "b250X3NpemVCDAoKX3RleHRfd3JhcConCghUZXh0V3JhcBILCgdUV19XUkFQ", + "EAASDgoKVFdfTk9fV1JBUBABQhSqAhFEQ0wuRUNTQ29tcG9uZW50c2IGcHJv", + "dG8z")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::Decentraland.Common.ColorsReflection.Descriptor, global::DCL.ECSComponents.TextsReflection.Descriptor, }, - new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] { - new pbr::GeneratedClrTypeInfo(typeof(global::DCL.ECSComponents.PBUiText), global::DCL.ECSComponents.PBUiText.Parser, new[]{ "Value", "Color", "TextAlign", "Font", "FontSize" }, new[]{ "Color", "TextAlign", "Font", "FontSize" }, null, null, null) + new pbr::GeneratedClrTypeInfo(new[] {typeof(global::DCL.ECSComponents.TextWrap), }, null, new pbr::GeneratedClrTypeInfo[] { + new pbr::GeneratedClrTypeInfo(typeof(global::DCL.ECSComponents.PBUiText), global::DCL.ECSComponents.PBUiText.Parser, new[]{ "Value", "Color", "TextAlign", "Font", "FontSize", "TextWrap" }, new[]{ "Color", "TextAlign", "Font", "FontSize", "TextWrap" }, null, null, null) })); } #endregion } + #region Enums + public enum TextWrap { + [pbr::OriginalName("TW_WRAP")] TwWrap = 0, + [pbr::OriginalName("TW_NO_WRAP")] TwNoWrap = 1, + } + + #endregion + #region Messages public sealed partial class PBUiText : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE @@ -86,6 +97,7 @@ public PBUiText(PBUiText other) : this() { textAlign_ = other.textAlign_; font_ = other.font_; fontSize_ = other.fontSize_; + textWrap_ = other.textWrap_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -99,7 +111,7 @@ public PBUiText Clone() { public const int ValueFieldNumber = 1; private string value_ = ""; /// - /// the text content + /// the text content, tag <b> and <i> are supported /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -209,6 +221,34 @@ public void ClearFontSize() { _hasBits0 &= ~4; } + /// Field number for the "text_wrap" field. + public const int TextWrapFieldNumber = 6; + private global::DCL.ECSComponents.TextWrap textWrap_; + /// + /// wrap text when the border is reached (default: TW_WRAP) + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::DCL.ECSComponents.TextWrap TextWrap { + get { if ((_hasBits0 & 8) != 0) { return textWrap_; } else { return global::DCL.ECSComponents.TextWrap.TwWrap; } } + set { + _hasBits0 |= 8; + textWrap_ = value; + } + } + /// Gets whether the "text_wrap" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasTextWrap { + get { return (_hasBits0 & 8) != 0; } + } + /// Clears the value of the "text_wrap" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearTextWrap() { + _hasBits0 &= ~8; + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -229,6 +269,7 @@ public bool Equals(PBUiText other) { if (TextAlign != other.TextAlign) return false; if (Font != other.Font) return false; if (FontSize != other.FontSize) return false; + if (TextWrap != other.TextWrap) return false; return Equals(_unknownFields, other._unknownFields); } @@ -241,6 +282,7 @@ public override int GetHashCode() { if (HasTextAlign) hash ^= TextAlign.GetHashCode(); if (HasFont) hash ^= Font.GetHashCode(); if (HasFontSize) hash ^= FontSize.GetHashCode(); + if (HasTextWrap) hash ^= TextWrap.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -279,6 +321,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(40); output.WriteInt32(FontSize); } + if (HasTextWrap) { + output.WriteRawTag(48); + output.WriteEnum((int) TextWrap); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -309,6 +355,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(40); output.WriteInt32(FontSize); } + if (HasTextWrap) { + output.WriteRawTag(48); + output.WriteEnum((int) TextWrap); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -334,6 +384,9 @@ public int CalculateSize() { if (HasFontSize) { size += 1 + pb::CodedOutputStream.ComputeInt32Size(FontSize); } + if (HasTextWrap) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TextWrap); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -364,6 +417,9 @@ public void MergeFrom(PBUiText other) { if (other.HasFontSize) { FontSize = other.FontSize; } + if (other.HasTextWrap) { + TextWrap = other.TextWrap; + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -402,6 +458,10 @@ public void MergeFrom(pb::CodedInputStream input) { FontSize = input.ReadInt32(); break; } + case 48: { + TextWrap = (global::DCL.ECSComponents.TextWrap) input.ReadEnum(); + break; + } } } #endif @@ -440,6 +500,10 @@ public void MergeFrom(pb::CodedInputStream input) { FontSize = input.ReadInt32(); break; } + case 48: { + TextWrap = (global::DCL.ECSComponents.TextWrap) input.ReadEnum(); + break; + } } } } diff --git a/unity-renderer/Assets/Scripts/MainScripts/DCL/ServiceProviders/TheGraph/TheGraph.cs b/unity-renderer/Assets/Scripts/MainScripts/DCL/ServiceProviders/TheGraph/TheGraph.cs index 73a6ff2bcd..bc3c8c6300 100644 --- a/unity-renderer/Assets/Scripts/MainScripts/DCL/ServiceProviders/TheGraph/TheGraph.cs +++ b/unity-renderer/Assets/Scripts/MainScripts/DCL/ServiceProviders/TheGraph/TheGraph.cs @@ -11,12 +11,12 @@ public class TheGraph : ITheGraph { private const float DEFAULT_CACHE_TIME = 5 * 60; - private const string LAND_SUBGRAPH_URL_ORG = "https://api.thegraph.com/subgraphs/name/decentraland/land-manager"; - private const string LAND_SUBGRAPH_URL_ZONE = "https://api.thegraph.com/subgraphs/name/decentraland/land-manager-sepolia"; - private const string MANA_SUBGRAPH_URL_ETHEREUM = "https://api.thegraph.com/subgraphs/name/decentraland/mana-ethereum-mainnet"; - private const string MANA_SUBGRAPH_URL_POLYGON = "https://api.thegraph.com/subgraphs/name/decentraland/mana-matic-mainnet"; - private const string NFT_COLLECTIONS_SUBGRAPH_URL_ETHEREUM = "https://api.thegraph.com/subgraphs/name/decentraland/collections-ethereum-mainnet"; - private const string NFT_COLLECTIONS_SUBGRAPH_URL_MATIC = "https://api.thegraph.com/subgraphs/name/decentraland/collections-matic-mainnet"; + private const string LAND_SUBGRAPH_URL_ORG = "https://subgraph.decentraland.org/land-manager"; + private const string LAND_SUBGRAPH_URL_ZONE = "https://api.studio.thegraph.com/query/49472/land-manager-sepolia/version/latest"; + private const string MANA_SUBGRAPH_URL_ETHEREUM = "https://subgraph.decentraland.org/mana-ethereum-mainnet"; + private const string MANA_SUBGRAPH_URL_POLYGON = "https://subgraph.decentraland.org/mana-matic-mainnet"; + private const string NFT_COLLECTIONS_SUBGRAPH_URL_ETHEREUM = "https://subgraph.decentraland.org/collections-ethereum-mainnet"; + private const string NFT_COLLECTIONS_SUBGRAPH_URL_MATIC = "https://subgraph.decentraland.org/collections-matic-mainnet"; private readonly IDataCache> landQueryCache = new DataCache>();